將資料從 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 } ]
廣告