js如何修改對(duì)象數(shù)組的key值
js修改對(duì)象數(shù)組的key值
實(shí)例
將dataOld這個(gè)對(duì)象數(shù)組的對(duì)象中的屬性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)建一個(gè)新對(duì)象,將item要改變的key賦給新創(chuàng)建的對(duì)象里面新key值,然后push給一個(gè)新創(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替換,通過(guò)循環(huán)然后將子類JSON.stringify后采用replace來(lái)改變屬性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),通過(guò)Object.keys()來(lái)改變屬性key;
convertKey (arr, key) { let dataNew = []; //新數(shù)組 this.dataOld.forEach((item, index) => { let obj = {}; //新數(shù)組里的新對(duì)象 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é)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
layer實(shí)現(xiàn)彈出層自動(dòng)調(diào)節(jié)位置
今天小編就為大家分享一篇layer實(shí)現(xiàn)彈出層自動(dòng)調(diào)節(jié)位置,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09Day.js常用方法集合(附各種事件格式的轉(zhuǎn)換)
dayjs是一個(gè)輕量的處理時(shí)間和日期的JavaScript庫(kù),下面這篇文章主要給大家介紹了關(guān)于Day.js常用方法的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-03-03解決webpack dev-server不能匹配post請(qǐng)求的問(wèn)題
這篇文章主要介紹了解決webpack不能匹配post請(qǐng)求的問(wèn)題,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-08-08