简体   繁体   English

如何解决此输出 [object Object] 的对象数组?

[英]How to solve this output [object Object] for an Array of Objects?

I am trying to Pass an array of Objects through a map function, but when trying to obtain those Objects, I am receiving [object Object] as output.我正在尝试通过 map 函数传递对象数组,但是在尝试获取这些对象时,我收到[object Object]作为输出。 The data I am passing is我传递的数据是

const Data =[
    {
   "Date":"Thu Jul 06 2021" ,
   "Time": "01:00 PM PST -03:00 PM PST",
   "Availabilty":"9 seats available",
  
  },
  {
   "Date":"Fri Jul 07 2021" ,
   "Time":"01:00 PM PST -03:00 PM PST",
   "Availabilty":"7 seats available",
  },
  {
   "Date":"Sat Jul 08 2021" ,
   "Time": "01:00 PM PST -03:00 PM PST",
   "Availabilty":"10 seats available",
  },
  {
   "Date":"Sun Jul 09 2021" ,
   "Time": "01:00 PM PST -03:00 PM PST",
   "Availabilty":"3 seats available",
  },
  {
   "Date":"Mon Jul 10 2021" ,
   "Time": "01:00 PM PST -03:00 PM PST",
   "Availabilty":"14 seats available",
  },
  
  {
   "Date":"Wed Jul 12 2021" ,
   "Time":"01:00 PM PST -03:00 PM PST",
   "Availabilty": "12 seats available",
  },
  {
   "Date":"Thu Jul 13 2021" ,
   "Time":"01:00 PM PST -03:00 PM PST",
   "Availabilty": "15 seats available",
  },
  {
   "Date":"Fri Jul 14 2021" ,
   "Time":"01:00 PM PST -03:00 PM PST",
   "Availabilty":"8 seats available",
  },
  {
   "Date":"Sat Jul 15 2021" ,
   "Time":"01:00 PM PST -03:00 PM PST",
   "Availabilty":"1 seats available"
  } 
  ]

The map function I am passing it to我将它传递给的地图函数

      {Data.map((d, i) => {
          return (
           <div key={i} >
      <table>
      <tr>
        <td className="date">{d.Date}</td>
        <td className="time">{d.Time}</td>
        <td className="availability" >{d.Availabilty}</td>
        {console.log(d)}
        <td><button value={d} onClick={(e)=>{
          decNum(e);
          }}>Book Now</button></td>
      </tr>

</table>

When I am trying to get the values through onclick event, I am getting the mentioned [object Object] output.当我试图通过 onclick 事件获取值时,我得到了提到的[object Object]输出。 I am able to get the values as d.Date or D.Time or D.Availabilty But what i want is to get the result for d and not a particular key.我能够将值作为d.Date or D.Time or D.Availabilty但我想要的是获得 d 的结果而不是特定的键。 Thank you in advance.先感谢您。

Try this:试试这个:

{Data.map((d) => {
  const {Date: date, Time, Availabilty} = d;
  return (
   <div key={`${date}${Time}${Availabilty}`}>
     <table>
        <tr>
          <td className="date">{date}</td>
          <td className="time">{Time}</td>
          <td className="availability" >{Availabilty}</td>
          <td><button value={d} onClick={decNum}>Book Now</button></td>
        </tr>
      </table>
    </div>
  )
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM