将一个数组中的某些项取出,组成一个新的数组(map方法)
记录史上第一次个人通过绞尽脑汁完成的数组之间的抽取和组装。废话少说直接上代码。this.originArr = [{username:'pride',id_code:'123',sink:'mabe1'},{username:'red',id_code:'234',sink:'mabe2'},{username:'greed',id_code:'456',sink...
   ·  
 记录史上第一次个人通过绞尽脑汁完成的数组之间的抽取和组装。
废话少说直接上代码。
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)
})
结果一样。
更多推荐
 

所有评论(0)