将数据从 JavaScript 中的嵌套数组转换为对象
假设我们有以下数组的数组-
const arr = [ [ ['dog', 'Harry'], ['age', 2] ], [ ['dog', 'Roger'], ['age', 5] ] ];
我们需要编写一个接收一个此类嵌套数组的 JavaScript 函数。然后函数应该基于该数组准备一个对象。
以上数组的对象应如下所示-
const output = [ {dog: 'Harry', age: 2}, {dog: 'Roger', age: 5} ];
示例
代码如下-
const arr = [ [ ['dog', 'Harry'], ['age', 2] ], [ ['dog', 'Roger'], ['age', 5] ] ]; const prepareObjectArray = (arr = []) => { const copy = arr.slice(); copy.forEach((el, ind, array) => { el.forEach((element, index, subArray) => { subArray[element[0]] = element[1]; }); el.length = 0; array[ind] = Object.assign({}, array[ind]); }); return copy; }; console.log(prepareObjectArray(arr));
输出
并且控制台中的输出将是-
[ { dog: 'Harry', age: 2 }, { dog: 'Roger', age: 5 } ]
广告