记录史上第一次个人通过绞尽脑汁完成的数组之间的抽取和组装。

废话少说直接上代码。

this.originArr = [
   {username:'pride',id_code:'123',sink:'mabe1'},
   {username:'red',id_code:'234',sink:'mabe2'},
   {username:'greed',id_code:'456',sink:'mabe3'},
   {username:'yellow',id_code:'678',sink:'mabe4'},
   {username:'purple',id_code:'890',sink:'mabe5'},
];
   // 新数组,用来装数据
  var newArr = [];
//通过map方法将原始数组中的每一项循环
  this.originArr.map(function(item,index){
    //新数组的项,用来盛放每一项中的各个参数,每次清空,这样避免改变sevm的值
      var sevm = {};
    //给每一项中的参数初始化并赋值
      sevm['name'] = item.username;
      sevm['code'] = item.id_code;
    //将项放进新的数组
      newArr[index] = sevm
  })

最后对newArr进行输出

console.log(newArr)

结果如下

通过网友提示我将上面代码优化:

this.newArr = this.originArr.map(function(item,index){
    return {name:item.username,code:item.id_code}
})

感谢。

在这个过程中我发现了之前忽略的index的作用,真的很好用。在某一程度上它的作用能替代push,例如将上面的代码改成

this.originArr.map(function(item){
    var sevm = {};
    sevm['name'] = item.username;
    sevm['code'] = item.id_code;
    newArrs.push(sevm)
})

结果一样。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐