假设我们有一个对象数组,每个对象包含一个 mainKeyId
字段,以 mainKeyId
的值作为新的键名,并给它添加一个新的属性。可以通过以下代码实现:
示例代码:
const arr = [
{ mainKeyId: 'key1', name: 'Item 1', value: 10 },
{ mainKeyId: 'key2', name: 'Item 2', value: 20 },
{ mainKeyId: 'key3', name: 'Item 3', value: 30 }
];
arr.forEach(item => {
// 使用 mainKeyId 作为新的键名,给对象添加一个新的属性
item[item.mainKeyId] = 'new value';
});
console.log(arr);
结果:
[
{ mainKeyId: 'key1', name: 'Item 1', value: 10, key1: 'new value' },
{ mainKeyId: 'key2', name: 'Item 2', value: 20, key2: 'new value' },
{ mainKeyId: 'key3', name: 'Item 3', value: 30, key3: 'new value' }
]
解析:
- 我们遍历了数组
arr
,对于每个对象,使用item.mainKeyId
的值作为新属性的键名(key1
、key2
、key3
),并为其赋值'new value'
。 - 这样,每个对象都新增了一个以
mainKeyId
值为键名的属性。