修改js数组对象中对象属性名

2,118 阅读1分钟

有些时候前端从后端拿过来的JSON对象数据,某些字段并不是前端想要的,最近在开发过程中就遇到过,数据一个属性名需要修改,在与后端进行“友好交流、充分沟通”无果的情况下,没办法只能自行进行处理。

一般修改js对象数组的对象属性名,最简便的就是通过遍历对象数组的方法进行修改。如使用map方法返回一个新数组:

data.map(item=>{return {新字段名: item.旧字段名}})

但是用这个方法,如果处理的数据量很大,循环遍历它的执行效率是非常低的。后网上搜索学习找到一个更高效的方法,即通过正则的方法进行过滤修改。

JSON.parse(JSON.stringify(data).replace(/name/g'new_name')) //data为数组,name为修改前,new_name为修改后

解释:1)JSON.stringify()把json对象转成json字符串;

          2)使用正则的replace()方法替换属性名;

          3)JSON.parse()把json字符串又转成json对象。