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)文章
layer實現(xiàn)彈出層自動調(diào)節(jié)位置
今天小編就為大家分享一篇layer實現(xiàn)彈出層自動調(diào)節(jié)位置,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09
Day.js常用方法集合(附各種事件格式的轉(zhuǎn)換)
dayjs是一個輕量的處理時間和日期的JavaScript庫,下面這篇文章主要給大家介紹了關(guān)于Day.js常用方法的相關(guān)資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2024-03-03
解決webpack dev-server不能匹配post請求的問題
這篇文章主要介紹了解決webpack不能匹配post請求的問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-08-08

