方法一:保留旧数组 key 和 value ;
var arr = [
{label: "张三", value: 1},
{label: "李四", value: "2"},
{label: "王五", value: "3"}
];
arr = arr.map(item => ({
...item,
new_key: item.value
}));
arr打印结果:[
{label: "张三", value: 1, new_key:1},
{label: "李四", value: 2, new_key:2},
{label: "王五", value: 3, new_key:3}
]
方法二:不保留旧数组 key 和 value ;
<1>说明:使用map循环,在map循环内创建一个新对象,将item要改变的key赋给新创建的对象里面新key值,然后push给一个新创建的数组newArr即可;文章来源:https://www.toymoban.com/news/detail-570164.html
var newArr = []; //新数组
arr.map(item => {
let obj = {
name: item.name,
value: item.count,
}
newArr.push(obj);
});
<2> 使用forEach循环 + for循环,通过Object.keys()来改变属性key;文章来源地址https://www.toymoban.com/news/detail-570164.html
changeKey (arr, key) {
let newArr = []; // 创建一个新数组
arr.forEach((item, index) => {
let obj = {}; // 新数组里的新对象
for (var i = 0; i < key.length; i++) {
obj[key[i]] = item[Object.keys(item)[i]]; // 将key值替换掉
}
newArr.push(obj);
})
console.log(newArr,'newArr');
return newArr;
};
let newArr = this.changeKey(arr, ['name','value']);
到了这里,关于javascript设置数组对象中的key值方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!