我在陣列中有一些物件,我需要修改這些物件以將每個物件的 id 作為它的物件鍵。我怎樣才能做到這一點 ?
由此 :
0: Object { id: 164783, date: "2022-01-03T10:54:11", date_gmt: "2022-01-03T09:54:11", … }
對此
239106: Object { id: 239106, date: "2022-03-30T15:07:57", date_gmt: "2022-03-30T13:07:57", … }
謝謝
uj5u.com熱心網友回復:
您可以通過reduce方法來實作這一目標。
const data = [{ id: 164783, date: "2022-01-03T10:54:11", date_gmt: "2022-01-03T09:54:11" }, { id: 164784, date: "2022-01-03T10:54:11", date_gmt: "2022-01-03T09:54:11" }, { id: 164785, date: "2022-01-03T10:54:11", date_gmt: "2022-01-03T09:54:11" }]
// this will accumulate the array in an object with a key equal to item.id
const result = data.reduce((acc, item) => ({...acc, [item.id]: item }), {})
console.log(result)
uj5u.com熱心網友回復:
如果您有一個物件陣列,則無法為物件定義鍵,因為您可以通過陣列的索引訪問該物件。我不確定這是否是您正在考慮的,但請查看
uj5u.com熱心網友回復:
我只是根據您的評論更改單個值
const data = [
{
id: 164783,
date: "2022-01-03T10:54:11",
date_gmt: "2022-01-03T09:54:11",
},
];
console.log(...data);
console.log(
...data.map(({ id, ...restData }) => {
id = 239106;
return { id, ...restData };
})
);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/506302.html
標籤:javascript 数组 目的
