【发布时间】:2018-03-19 13:34:39
【问题描述】:
我有一个具体的案例,不知道能不能实现。
给定输入数组。
var originalArr = [
[
{ ID: 3, name: 'Beef' },
{ ID: 4, name: 'Macaroni' },
{ ID: 5, name: 'Sauce#1' }
],
[{ ID: 1, name: 'Lettuce' }, { ID: 2, name: 'Brocoli' }]
];
我想遍历内部数组并从对象中选择 ID,然后创建一个新的来代替数组。所以我的输出应该是这样的。
var output = [
{
'1': {
name: 'Lettuce',
ID: 1
},
'2': {
name: 'Brocoli',
ID: 2
}
},
{
'3': {
name: 'Beef',
ID: 3
},
'4': {
name: 'Macaroni',
ID: 4
},
'5': {
name: 'Sauce#1'
}
}
];
使用map 迭代内部数组很容易,但是如何创建新的Object 来代替数组并动态拉起其键值?甚至有可能给定我的输入来产生所需的输出。
【问题讨论】:
-
一个问题:在您的输出中,ID 值为“1”和“2”的对象排在第一位,但在输入数组中它排在第二位。除了重新排列之外,您还想做一些排序吗?
-
不需要整理东西。
标签: javascript arrays object