尝试将数组的数组(其中内部数组仅存储两个值)转换为对象。
这是我目前所得到的:
function fromListToObject(array) {
var obj = {};
for (i in array) {
obj[array[i[0]]] = array[i[1]];
};
return obj
};
A1=[['make', 'Ford'], ['model', 'Mustang'], ['year', 1964]];
console.log(fromListToObject(A1));
但它给了我一个对象,其中键是数组对,值是“未定义的”。
暂停?
最佳答案
有了 ES6,你可以使用
- >
Object.assign
对于一个新对象, - > spread syntax
...
用于将数组作为参数, - >
Array#map
用于返回数组中的单个对象, - > destructuring assignment用于获取数组/对象的一部分和
- > computed property names用于对象的命名值对。
var array = [['make', 'Ford'], ['model', 'Mustang'], ['year', 1964]],
object = Object.assign(...array.map(([k, v]) => ({ [k]: v })));
console.log(object);
关于javascript - 将数组的数组转换为对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46967611/