当前位置: 首页 > 面试题库 >

JavaScript:将数组转换为对象

叶鸿煊
2023-03-14
问题内容

我正在尝试将数组转换为对象,并且我快到了。

这是我的输入数组:

[ {id:1,name:"Paul"},
  {id:2,name:"Joe"},
  {id:3,name:"Adam"} ]

这是我当前的输出对象:

{ '0': {id:1,name:"Paul"},
  '1': {id:2,name:"Joe"},
  '2': {id:3,name:"Adam"} }

这是我想要的输出对象:

[ {id:1,name:"Paul"},
  {id:2,name:"Joe"},
  {id:3,name:"Adam"} ]

这是我当前的代码:

function toObject(arr) {
  var rv = {};
  for (var i = 0; i < arr.length; ++i)
    if (arr[i] !== undefined) rv[i] = arr[i];
  return rv;
}

问题答案:

你不能那样做。

{ {id:1,name:"Paul"},
  {id:2,name:"Joe"},
  {id:3,name:"Adam"} }

不是有效的JavaScript对象。

javascript中的对象是键值对。看看你的情况如何id,然后是冒号,然后是数字?的keyid,号码是的value

如果执行此操作,则将无法访问属性。

这是Firefox控制台的结果:

{ {id:1,name:"Paul"},
  {id:2,name:"Joe"},
  {id:3,name:"Adam"} } 
SyntaxError: missing ; before statement


 类似资料:
  • 问题内容: 转换的最佳方法是什么: 至: 问题答案: ECMAScript 6引入了易于填充的内容: 该方法用于将所有可枚举的自身属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。 数组的自身属性不会被复制,因为它无法枚举。 另外,您可以使用ES6 传播语法来达到相同的结果:

  • 我在数组中有一组值,每个值都有一个和。 一旦我有了值数组和类型控制台和,输出是: 如何将这些值存储在哈希映射中,如键值(ID-LABEL)对,并将其存储在json中?

  • 我有一个包含这些键值对的对象。这个对象来自我调用的API: 简单地说,它是一个数字对象,我想要的输出是(一个简单的数组): 我试过Object。值和对象。键仍然将其转换为对象。有什么帮助吗?

  • 问题内容: 假设我有一个像这样的数组 但我想将其转换为这样的对象: 能做到吗?我尝试过的所有方法都只会获得最后一个键值对。 问题答案: 如果您使用的是ES6或更高版本:

  • 问题内容: 转换的最佳方法是什么: 至: 问题答案: ECMAScript 6引入了易于填充的内容: 该方法用于将所有可枚举的自身属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。 数组的自身属性不会被复制,因为它无法枚举。 另外,您可以使用ES6 传播语法来达到相同的结果: