如何更改对象数组中的键名?
var arrayObj = [{key1:'value1', key2:'value2'},{key1:'value1', key2:'value2'}];
我怎样才能改变每一个key1
,stroke
以便我得到:
var arrayObj = [{stroke:'value1', key2:'value2'},{stroke:'value1', key2:'value2'}];
如何更改对象数组中的键名?
var arrayObj = [{key1:'value1', key2:'value2'},{key1:'value1', key2:'value2'}];
我怎样才能改变每一个key1
,stroke
以便我得到:
var arrayObj = [{stroke:'value1', key2:'value2'},{stroke:'value1', key2:'value2'}];
在最近的 JavaScript(和 TypeScript)中,使用带有 rest 语法、展开语法和数组的map
解构来替换对象数组中的一个关键字符串。
const arrayOfObj = [{
key1: 'value1',
key2: 'value2'
}, {
key1: 'value1',
key2: 'value2'
}];
const newArrayOfObj = arrayOfObj.map(({
key1: stroke,
...rest
}) => ({
stroke,
...rest
}));
console.log(newArrayOfObj);
var i;
for(i = 0; i < arrayObj.length; i++){
arrayObj[i].stroke = arrayObj[i]['key1'];
delete arrayObj[i].key1;
}
ES6 map()方法:
let arrayObj = [{key1:'value1', key2:'value2'},{key1:'value1', key2:'value2'}];
arrayObj = arrayObj.map(item => {
return {
stroke: item.key1,
key2: item.key2
};
});
您无法更改属性名称,您必须使用新名称添加值并删除旧属性:
for (var i = 0; i < arrayObj.length; i++) {
arrayObj[i].stroke = arrayObj[i].key1;
delete arrayObj[i].key1;
}
ES6 只需要一行代码
尝试以下代码:
arrayObj.map(({ stroke, key2 }) => ({ yourNewKey: stroke, yourNewKey2: key2 }));