Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ReactJS将我的奇怪数组转换为对象以将其添加到列表中_Javascript_Reactjs_Next.js - Fatal编程技术网

Javascript ReactJS将我的奇怪数组转换为对象以将其添加到列表中

Javascript ReactJS将我的奇怪数组转换为对象以将其添加到列表中,javascript,reactjs,next.js,Javascript,Reactjs,Next.js,我有以下数组: [{…}] 0: {id: 2, createdAt: "2021-06-11T10:13:46.814Z", exchangedAt: "2021-06-11T08:04:11.415Z", imageUrl: "url", user: "user", …} 1: .... 2: .... 3: .... .... length: 5 __proto__: Array(0) 我想将其转换为对象,我

我有以下数组:

[{…}]
0: {id: 2, createdAt: "2021-06-11T10:13:46.814Z", exchangedAt: "2021-06-11T08:04:11.415Z", imageUrl: "url", user: "user", …}
1: ....
2: ....
3: ....
....
length: 5
__proto__: Array(0)
我想将其转换为对象,我发现了以下代码,但我收到的只是0:

Object.keys(fetchedData.data).map(key => console.log(key))

如何访问和转换我的5个数组值?

因此,我迭代了您的数组,并使用“id”字段作为键。每个对象的键都必须是唯一的,因此这假设您的ID是唯一的

const fetchedData=[
{id:1,createdAt:“2021-06-11T10:13:46.814Z”,交换地址:“2021-06-11T08:04:11.415Z”,图像url:“url”,用户:“用户”},
{id:2,createdAt:“2021-06-11T10:13:46.814Z”,交换地址:“2021-06-11T08:04:11.415Z”,图像url:“url”,用户:“用户”},
{id:3,createdAt:“2021-06-11T10:13:46.814Z”,交换地址:“2021-06-11T08:04:11.415Z”,图像url:“url”,用户:“用户”}
]
obj={}
fetchedData.forEach(x=>{
tempX={…x}
删除tempX[“id”]
obj[x.id]=tempX
})
console.log('转换对象',obj)
//使用您的方法,只记录值而不将其转换为对象,您可以。。。
fetchedData.forEach(el=>console.log(“单个元素”,el))

所以我遍历了您的数组,并使用“id”字段作为键。每个对象的键都必须是唯一的,因此这假设您的ID是唯一的

const fetchedData=[
{id:1,createdAt:“2021-06-11T10:13:46.814Z”,交换地址:“2021-06-11T08:04:11.415Z”,图像url:“url”,用户:“用户”},
{id:2,createdAt:“2021-06-11T10:13:46.814Z”,交换地址:“2021-06-11T08:04:11.415Z”,图像url:“url”,用户:“用户”},
{id:3,createdAt:“2021-06-11T10:13:46.814Z”,交换地址:“2021-06-11T08:04:11.415Z”,图像url:“url”,用户:“用户”}
]
obj={}
fetchedData.forEach(x=>{
tempX={…x}
删除tempX[“id”]
obj[x.id]=tempX
})
console.log('转换对象',obj)
//使用您的方法,只记录值而不将其转换为对象,您可以。。。
fetchedData.forEach(el=>console.log(“单个元素”,el))
它正在访问5个值


正在访问5个值。

请提供输入数组和预期结果。您的代码示例just console.log从数据中获取的键的结果。请尝试以下操作:Object.keys(fetchedData.data).map(key=>fetchedData.data[key])请提供输入数组和预期结果。您的代码示例只是console.log从数据中获取的键的结果。请尝试以下操作:Object.keys(fetchedData.data).map(key=>fetchedData.data[key])您可以使用这样的代码片段。您可以使用SO代码段。您可以使用SO代码段。您可以使用SO代码段。
a = [
  {
     "id":1,
     "createdAt":"2021-06-11T10:13:46.814Z",
     "exchangedAt":"2021-06-11T08:04:11.415Z",
     "imageUrl":"url",
     "user":"user"
  },
  {
     "id":2,
     "createdAt":"2021-06-11T10:13:46.814Z",
     "exchangedAt":"2021-06-11T08:04:11.415Z",
     "imageUrl":"url",
     "user":"user"
  },
  {
     "id":3,
     "createdAt":"2021-06-11T10:13:46.814Z",
     "exchangedAt":"2021-06-11T08:04:11.415Z",
     "imageUrl":"url",
     "user":"user"
  },
  {
     "id":2,
     "createdAt":"2021-06-11T10:13:46.814Z",
     "exchangedAt":"2021-06-11T08:04:11.415Z",
     "imageUrl":"url",
     "user":"user"
  },
  {
     "id":4,
     "createdAt":"2021-06-11T10:13:46.814Z",
     "exchangedAt":"2021-06-11T08:04:11.415Z",
     "imageUrl":"url",
     "user":"user"
  }
]
(5) [{…}, {…}, {…}, {…}, {…}]
Object.keys(a).map(key => console.log(key))
VM532:1 0
VM532:1 1
VM532:1 2
VM532:1 3
VM532:1 4