js数组问题

现有一个数组,想要根据这个数组得到一个结构稍微有点不一样的新数组。

//现在有如下一个数组alist

var alist=[
    {'name':'sh','tel':'13435555454','id':1},
    {'name':'kk','tel':'1343566454','id':2},
    {'name':'rr','tel':'1343937454','id':3}
]

//想要根据上面的alist生成一个blist,取alist的每一项进行操作得到如下的新的list,要求positionName属性对应name属性,contactId属性对应id属性

blist=[
    {'positionName':'sh','contactId':1},
    {'positionName':'kk','contactId':2},
    {'positionName':'rr','contactId':3}
]

请问可以怎么样实现呢?前端小白,对js的一些数据操作掌握不扎实。麻烦大神指教啦0.0

阅读 2.3k
4 个回答
var blist = alist.map(function(obj){
   return {
        positionName:obj.name,
        contactId:obj.id
     }
})

for循环依次赋值?代码如下:

var blist = [];
for(var i of alist){
    blist.push({'positionName':i.name,'contactId':i.id});
}
const blist = alist.map(({ name, id }) => ({
  positionName: name,
  contactId: id,
}))
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题