javascript中是否有任何可以修改数组值的方法。我是使用for loop
完成的,还有另一种方法调用forEach
。我想通过只使用一行来完成它。就像我已经看到使用Array.prototype.slice
将onject转换为数组的代码。那么我们可以通过使用类似的功能来完成要求。我谷歌但没有找到任何相关的帖子。
this.gome = (function(data){
for(var i=0;i<data.length;i++){
data[i].id = i
}
return data })(data.gome);
this.gome = Array.prototype.slice.call(data.gome,//code) // something like that.
答案 0 :(得分:1)
map
是你的朋友:
this.gome = data.gome.map((x, i) => ({...x, id: i}));
或没有ES2016:
this.gome = data.gome.map((x, i) => Object.assign({}, x, {id: i }));
答案 1 :(得分:0)
这将使用一行添加值,但它仍然是for循环
for(var i = 0, l = data.length; i<l; i++){ data[i].id = i };