javascript将属性添加到数组中的所有对象

时间:2017-11-03 09:38:16

标签: javascript arrays object

我有一个由外部API提供的对象数组,例如 [{prop:val1},{prop:val2},{prop:val3} ....]

我必须将此对象(我的代码)提供给第三方库,该库希望对象上的属性名称为' xyz'而不是' prop'。

什么是最有效的方式(内存明智和更快)基本上避免两者: 1.迭代数组 2.添加' xyz'属性到数组中的所有对象

实现这个目标?

我正在考虑将xyz的吸气剂添加到所有返回' prop'值,但这不会保存循环。 在这一点上添加原型级别(Object.property)似乎是一个坏主意。

编辑:我不是在寻找不同的方法来循环遍历javascript中的数组,如forEach或map。我有一个非常具体的问题,我有兴趣探索是否可以简单地为xyz'提供属性代理。

2 个答案:

答案 0 :(得分:0)

数组映射用于循环数组。

myArray.map(function(obj){
    obj.xyz = 'yourvalue';
    return obj;
}

答案 1 :(得分:0)

您可以使用Array.map从API收到的数组中创建新内容。

var newArray = oldArray.map(function(obj){
    return {newKey : obj.prop};
});

在此示例中,newKey将是您想要的关键属性,而不是'prop',并且已分配旧的'prop'