如何将对象列表映射到数组数组
How to map a list of objects into an array of arrays
我有一个对象数组,需要将其重新格式化为特定格式的数组列表。
我需要我的列表格式如下
list: [
[ "B", "A" ],
[ "F", "E" ],
]
但我最接近的是这个
list: ["B A", "F E"]
使用此代码
const itemList = [
{"ProductName":"A",
"Sku":"B",},
{"ProductName":"E",
"Sku":"F",}
];
const newList = itemList.map(item => `${item.Sku} ${item.ProductName}`);
console.log(newList);
我该如何正确映射它?
您可以使用映射中的值创建数组:
const itemList = [
{"ProductName":"A",
"Sku":"B",},
{"ProductName":"E",
"Sku":"F",}
];
const newList = itemList.map(item => [item.Sku, item.ProductName]);
console.log(newList);
您还可以对每个项目使用 destucure 并将其映射到这些值的数组:
const itemList = [
{
ProductName: 'A',
Sku: 'B'
},
{
ProductName: 'E',
Sku: 'F'
}
];
const newList = itemList.map(({ProductName, Sku}) => [
Sku,
ProductName
]);
console.log(newList);
为了简单起见,我会这样使用 Object.values:
const newList = [];
itemList.map(item => newList.push(Object.values(item)));
我有一个对象数组,需要将其重新格式化为特定格式的数组列表。
我需要我的列表格式如下
list: [
[ "B", "A" ],
[ "F", "E" ],
]
但我最接近的是这个
list: ["B A", "F E"]
使用此代码
const itemList = [
{"ProductName":"A",
"Sku":"B",},
{"ProductName":"E",
"Sku":"F",}
];
const newList = itemList.map(item => `${item.Sku} ${item.ProductName}`);
console.log(newList);
我该如何正确映射它?
您可以使用映射中的值创建数组:
const itemList = [
{"ProductName":"A",
"Sku":"B",},
{"ProductName":"E",
"Sku":"F",}
];
const newList = itemList.map(item => [item.Sku, item.ProductName]);
console.log(newList);
您还可以对每个项目使用 destucure 并将其映射到这些值的数组:
const itemList = [
{
ProductName: 'A',
Sku: 'B'
},
{
ProductName: 'E',
Sku: 'F'
}
];
const newList = itemList.map(({ProductName, Sku}) => [
Sku,
ProductName
]);
console.log(newList);
为了简单起见,我会这样使用 Object.values:
const newList = [];
itemList.map(item => newList.push(Object.values(item)));