js如何向数组对象里插入一个元素?

插入前:

var arr = [
    {
        id:1,
        name:"小明"
    },
    {
        id:2,
        name:"小红"
    }
]

插入后:

var arr = [
    {
        id:1,
        name:"小明",
        age:18
    },
    {
        id:2,
        name:"小红",
        age:21
    }
]

这个用js该怎么实现呀?

阅读 10.8k
2 个回答
let newArr = arr.map(obj => {
    return {
        id: obj.id,
        name: obj.name,
        age: 18
    }
})
/**
 * 
 * @param {Array} arr 
 */
function newArr(arr) {
  var arr = arr.slice(0); // 深拷贝此数组
  arr.forEach(function(val, ind) {
    val.age = parseInt(Math.random()*25); // 随机一个 0-24 的 age
  })
  return arr;
}

var arr = [
  {
      id:1,
      name:"小明"
  },
  {
      id:2,
      name:"小红"
  }
];

console.log(newArr(arr));

也可以改为 :

/**
 * 
 * @param {Array} arr 
 */
function newArr(arr) {
  return arr.map(function(val, ind) {
    return {
      id: val.id,
      name: val.name,
      age: parseInt(Math.random()*25) // 随机一个 0-24 的 age
    }
  });
}

var arr = [
  {
      id:1,
      name:"小明"
  },
  {
      id:2,
      name:"小红"
  }
];

console.log(newArr(arr));
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题