我有一個物件,我想更改單個物件鍵名并將其余值作為陣列回傳。
這就是我得到的
const order = {
id: "929283652nsjs-sis82ms",
items: [{ itemCount: 1, itemName: "veg" }],
createAt: new Date(),
modifiedAt: new Date()
}
const newArray = Object.keys(order).flatMap((o) => ({ orderId: o.id }))
console.log(newArray)
//excpected output
const expected = [
{
orderId: "929283652nsjs-sis82ms",
items: [{ itemCount: 1, itemName: "veg" }],
createAt: new Date(),
modifiedAt: new Date()
}
]
console.log(expected)
uj5u.com熱心網友回復:
試試https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment
const order = {
id: "929283652nsjs-sis82ms",
items: [{ itemCount: 1, itemName: "veg" }],
createAt: new Date(),
modifiedAt: new Date()
}
const convert = ({id, ...rest}) => [{orderId: id, ...rest}];
console.log(convert(order));
uj5u.com熱心網友回復:
獲取該物件,從其余屬性中解構您想要更改的屬性(我在此示例中重新標記了它),然后在陣列中發回一個新物件。
const order={id:"929283652nsjs-sis82ms",items:[{itemCount:1,itemName:"veg"}],createAt:new Date,modifiedAt:new Date};
function change(order) {
// Destructure the id, relabel it
const { id: orderId, ...rest } = order;
// And then return that new id along
// with the rest of the object properties in an array
return [{ orderId, ...rest }];
}
console.log(change(order));
uj5u.com熱心網友回復:
如何創建一個新鍵并為其分配一個值,然后洗掉舊鍵。
const order = {
id: "929283652nsjs-sis82ms",
items: [{ itemCount: 1, itemName: "veg" }],
createAt: new Date(),
modifiedAt: new Date()
}
order['orderId']=order['id'] // making a new key assigning a value
delete order['id'] // deleteing the old key
console.log(order)
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/453249.html
標籤:javascript 数组 目的
上一篇:在畫布網格上添加點
下一篇:將陣列轉換為物件名稱和值
