我在下面有大約 20 個這樣的物件,
{
isReadOnly: false
isRequired: false
isResettable: false
name: "test1"
},
{
isReadOnly: false
isRequired: false
isResettable: false
name: "test2"
}
我需要將它們合并到新的 10 個物件中,其中
0, 1 -> 0 {0: data0, 1??: data1}
2, 3 -> 1 {0: data2, 1: data3}
4, 5 -> 2 {0: data4, 1: data5}
x x
18, 19 -> 9 {0, data18, 1: data19}
20 -> {0: data20, 1: null (或不存在)}
我該怎么做?
uj5u.com熱心網友回復:
const arr = [...Array(20).keys()].map((_, index) => ({
isReadOnly: false,
isRequired: false,
isResettable: false,
name: index
}));
let combinedArr = [];
for(let i = 0; i < arr.length; i =2){
combinedArr.push({0: arr[i], 1: arr[i 1]})
}
console.log(combinedArr);
uj5u.com熱心網友回復:
如果你有像 [{data0}, {data1}, {data3},...,{data19}] 這樣的物件陣列,并且你想用 10 個物件創建陣列,那么你可以這樣實作:
let oldArr = [{data0}, {data1}, {data3},...,{data19}]
let newArr = []
for (let i=0; i < oldArr.length; i=i 2) {
let obj = {0: oldArr[i], 1: oldArr[i 1]}
newArr.push(obj);
}
uj5u.com熱心網友回復:
const mainData = [...yourObjects];
let mergedArray = [];
const size = mainData.length;
for (let i=0; i < size; i 2) {
mergedArray[i] = {
0: mainData[index],
1: index 2 === size ? mainData[index 1]: null
};
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/417397.html
標籤:
上一篇:ESLint錯誤:更喜歡使用箭頭函式而不是普通函式prefer-arrow/prefer-arrow-functions
