我是 ES6 JavaScript 的新手。我正在寻找一种场景,我可以更新来自 Web 服务的对象数组并将数据格式传递给表。
我正在使用 ReactJS“rc-table”。
https://www.npmjs.com/package/rc-table
要以 rc-table 格式显示我们的数据,我们需要在来自后端的数据中有一个属性键:“somevalue”。
我的数据采用以下格式:
{
{
Name:'Robert',
City: 'Barcelona'
},
{
Name: 'Marguaritte',
City: 'Baltimore'
}
}
现在它将以 rc-table 格式显示,仅当对象具有唯一键属性时。
例如:
{
{
Name:'Robert',
City: 'Barcelona',
Key:1
},
{
Name: 'Marguaritte',
City: 'Baltimore',
Key:2
}
}
我正在寻找用“key:1”和“key:2”更新我的对象 附件是我的代码。任何帮助将不胜感激。
最佳答案
嗯,您的实际数组格式不正确,您应该将包装 {}
替换为 []
,这样它就是一个有效的数组。
无论如何你应该使用Array.prototype.map() ,它将使用回调函数返回自定义数组,回调函数将 key
属性添加到每个迭代项。
你应该这样写你的代码:
var data = arr.map(function(item, index) {
item.key = index + 1;
return item;
});
ES6 解决方案:
使用 ES6 arrow functions 根据 Chester Millisock 的建议在评论中:
var data = arr.map((item, index) => {
item.key = index + 1;
return item;
});
演示:
var arr = [{
Name: 'Robert',
City: 'Barcelona'
},
{
Name: 'Marguaritte',
City: 'Baltimore'
}
];
var data = arr.map((item, index) => {
item.key = index + 1;
return item;
});
console.log(data);
关于javascript - 在 ES6 javascript 中更新现有对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43552400/