小编pat*_*krs的帖子

将数组转换为具有键/值对的对象

我仍在学习 JavaScript,所以如果这看起来是一个补救性问题,我提前道歉。

我以数组的形式从 API 调用接收数据,如下所示:

arr = ['topic1',497,'topic2',591,'topic3',17,'topic4',980]
Run Code Online (Sandbox Code Playgroud)

尽管从该数组中看不出来,但每个主题字符串后面的数字是前一个主题的计数。

我想在 React 应用程序中使用这些数据,即将其映射到表或其他数据结构。但当这些值像这样匿名时,这就非常困难了。

所以,我想获取这个数组并将其转换为具有键/值对的对象。因此,在进行某种循环/过滤器/映射/等工作之后。在数组上,我需要这样结束:

newArr = [
  {topic: 'topic1', count: 497},
  {topic: 'topic2', count: 591},
  {topic: 'topic3', count: 17},
  {topic: 'topic4', count: 980},
]
Run Code Online (Sandbox Code Playgroud)

我尝试过很多技术,包括使用字典、地图、地图、过滤器、forEach、for ... in,以及比我现在记得的更多的技术。是的,我搜索了很多网页和论坛。问题是,我的问题包括 JavaScript 的一些基本构建块,因此我找到的答案对于我的问题来说不够具体。

我确实成功过滤掉了数组中的偶数和奇数元素,如下所示:

let x = arr.filter((element, index) => {
  return index % 2 === 0; filter elements located at an even index
});

let y = arr.filter((element, index) => {
  return index % 2 === 1; filter elements located at an odd index …
Run Code Online (Sandbox Code Playgroud)

javascript arrays object reactjs

5
推荐指数
1
解决办法
844
查看次数

标签 统计

arrays ×1

javascript ×1

object ×1

reactjs ×1