对于像这样的对象数组:
myArray = [
{id: "1", type: "xxx"},
{id: "2", type: "abc"},
{id: "3", type: "xxx"},
{id: "4", type: "yyy"}
];
如果需要为每个对象创建另一个受“type”值影响的属性,例如:
如果“type === xxx”,则“newProp = prop1”
如果“type === abc”,则“newProp = prop2”
如果“type === yyy”,则“newProp = prop3”
那么结果数组应如下所示:
myArray = [
{id: "1", type: "xxx", newProp: "prop1"},
{id: "2", type: "abc", newProp: "prop2"},
{id: "3", type: "xxx", newProp: "prop1"},
{id: "4", type: "yyy", newProp: "prop3"}
];
我用for循环和大量if语句实现了它,但可能有更有效的解决方案我不知道。你有什么想法吗?
myArray.newProp = [];
,这样会创建一个新的数组。在这种情况下,没有必要先声明它。 - Leo Messi