/*
    initialArr: 原数组
    obj: 准备放入数组的对象
    pro: 对比的参数(一定要传字符串)
     */
     function formateArrObjData(initialArr, obj, pro) {
      let index = initialArr.findIndex((val) => val[pro] === obj[pro])
      // 如果有就替换  没有就添加
      if (initialArr.findIndex((val) => val[pro] === obj[pro]) !== -1) {
        initialArr.splice(index, 1, obj);
      } else {
        initialArr.push(obj);
      }
      return initialArr
    }

    var initialArr = [
      {a: 1, b: 1},
      {a: 2, b: 2}
    ]

    let newObj = formateArrObjData(initialArr, {a: 4, b: 44}, 'a')

    console.log(newObj, 'newObj')

我也是在网上找的前辈的方法,我记录下来就当是笔记了。


我的一个道姑朋友
80 声望4 粉丝

星光不问赶路人,岁月不负有心人。