JS中数组对象里面key名替换方法

当后台返回的字段名跟前端一些框架绑定的键名不一致时,需要手动转换一下:

data为数组,keyName为修改前的键名,name为修改后的键名

JSON.parse(JSON.stringify(data).replace(/keyName/g, 'name'))    

过程解析:

  1. JSON.stringify()把json对象转成json字符串;
  2. 使用正则的replace()方法替换属性名;
  3. JSON.parse()把json字符串又转成json对象。

另一种方法:利用map对象

  let newData = [];
  let obj = {};
  this.data.map(item => {
  	obj = item;
    obj['name'] = item['keyName'];  
    delete obj['keyName'];
    newData.push(obj)   
  })

过程解析:

  1. 循环数组对象,复制对象原来的值到新的obj中;
  2. 在obj对象中添加键名为name的属性,将旧的键名为keyName的属性赋值;
  3. 删除掉旧的键名为keyName的属性;
  4. 将处理好的obj对象添加到新数组中。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章