【发布时间】:2020-02-25 13:19:26
【问题描述】:
我的任务是使用循环将数组转换为对象。
arr = ['a', 'b', 'c', 'd', 'e'];
到对象数组
arr = {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5};
我得到了正确的结果,但我不确定我解决此任务的方式。 请给我一条建议。
let arr = ['a', 'b', 'c', 'd', 'e'];
let obj = {};
for (let i = 0; i < arr.length; i++) {
obj[arr[i]] = i + 1
}
console.log(obj)
如前所述,结果是对的
{ a: 1, b: 2, c: 3, d: 4, e: 5 }
但我倾向于觉得有更好的解决方案。
【问题讨论】:
-
如果您的任务是使用循环从数组创建对象,这是一个很好的解决方案。
-
答案取决于您希望如何处理边缘情况,例如带有孔
['a', 'b',,,,,,,'c']或重复元素['a', 'b', 'a', 'c']的数组
标签: javascript arrays object