js如何修改對象數(shù)組的key值
js修改對象數(shù)組的key值
實例
將dataOld這個對象數(shù)組的對象中的屬性key變成dataNew中的形式;
//原數(shù)據(jù)
dataOld: [{ count: '33', area: '122.2', districtId: 43000 }, { count: '44', area: '168.2', districtId: 43001 }]
//接口需要的數(shù)據(jù)
dataNew: [{ countAll: '33', countArea: '122.2', districtId: 43000 }, { count: '44', area: '168.2', districtId: 43001 }]方法一
使用map循環(huán),在map循環(huán)內(nèi)創(chuàng)建一個新對象,將item要改變的key賦給新創(chuàng)建的對象里面新key值,然后push給一個新創(chuàng)建的數(shù)組dataNew即可;
let dataNew = []; //新數(shù)組
dataOld.map(item => {
let obj = {
countAll: item.count,
countArea: item.area,
districtId: item.districtId,
}
dataNew.push(obj);
});方法二
使用map循環(huán) + replace替換,通過循環(huán)然后將子類JSON.stringify后采用replace來改變屬性key;
let dataNew = []; //新數(shù)組
dataOld.map(item => {
let _item = JSON.parse(JSON.stringify(item).replace('count', 'countAll').replace('area', 'countArea'));
dataNew.push(_item)
});
方法三
使用forEach循環(huán) + for循環(huán),通過Object.keys()來改變屬性key;
convertKey (arr, key) {
let dataNew = []; //新數(shù)組
this.dataOld.forEach((item, index) => {
let obj = {}; //新數(shù)組里的新對象
for (var i = 0; i < key.length; i++) {
obj[key[i]] = item[Object.keys(item)[i]]; //key值替換
}
dataNew.push(obj);
})
console.log(dataNew,'dataNew');
return dataNew;
},
// 改變后的key
let dataNew = this.convertKey(this.dataOld, ['countAll', 'countArea', 'districtId']);結(jié)果:

總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript中關(guān)鍵字 in 的使用方法詳解
這篇文章主要介紹了JavaScript中關(guān)鍵字 in 的使用方法詳解,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-10-10
普通Fetch和Fetch流式的區(qū)別詳解(極簡代碼示例)
流式是一種傳輸技術(shù),與非流式的最大區(qū)別是,數(shù)據(jù)或頁面不是一次發(fā)送給前端,而是使用流的方式,分塊傳輸?shù)角岸?這篇文章主要介紹了普通Fetch和Fetch流式區(qū)別的相關(guān)資料,需要的朋友可以參考下2026-04-04
JS組件系列之使用HTML標(biāo)簽的data屬性初始化JS組件
這篇文章主要介紹了JS組件系列之使用HTML標(biāo)簽的data屬性初始化JS組件,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-09-09

