假设我有一个数组:
var array = [{'ref1': {'Product': 'Car', 'color': 'Red'}}, {'ref2': {'product': 'velo', 'color': 'red'}}]我想在“ref1”中添加“价格”:“8”
如何才能正确地做到这一点?
亚历克斯。
发布于 2018-10-01 17:42:46
如果您不确定包含"ref1“属性的对象是否总是在索引0处,则这里有一个更动态的代码:
const insert = (idProp, key, value) => {
var el = array.find(el => el.hasOwnProperty(idProp));
if (el) { el[idProp][key] = value }
}那就叫它
insert('ref1', 'Price', 8)发布于 2018-10-01 17:33:06
这就是你怎么做的:array[0]['ref1'].price = 8;
var array = [
{'ref1': {'Product': 'Car', 'color': 'Red'}}, {'ref2': {'product': 'velo', 'color': 'red'}}]
array[0]['ref1'].price = 8;
console.log(array)
注意: ref1具有属性Product,而ref2具有小写的属性product。这以后可能会给你带来一些问题。
发布于 2018-10-01 17:35:15
你可以这样做:
var arr = [{'ref1': {'Product': 'Car', 'color': 'Red'}}, {'ref2': {'product': 'velo', 'color': 'red'}}];
console.log(arr);
arr[0]['ref1'].Price = 8;
console.log(arr);
https://stackoverflow.com/questions/52596046
复制相似问题