javaScript 获取对象数组的对象里面想要的属性,返回一个新的数组


    // obj 数组 或者 对象 
    // arr 要获取对象数组的对象的key数组
    // addProperty 可以往对象数组的每一个对象添加一个新的属性
      reducedFilter(obj, arr, addProperty) {
        if (typeof (obj) !== "object" || !Array.isArray(arr)) {
          throw new Error("参数格式不正确")
        }
        let list = []
        obj.forEach(i => {
          let result = {}
          Object.assign(i, addProperty)
          Object.keys(i).filter((key) => arr.includes(key)).forEach((key) => {
            result[key] = i[key]
          })
          list.push(result)
        })
        return list
      }
      //过滤掉对象数组里面每一个name的属性
      let data = [{
          id : 'a',
          name : 'aName'
      },{
          id : 'a',
          name : 'aName'
      }]
      console.log(this.reducedFilter(data, ['name','age'], {'age':18}));
      // log => [{name:'aName',age:'18'},{name:'bName',age:18}]

 

原创文章,作者:Carrie001128,如若转载,请注明出处:https://blog.ytso.com/tech/webdev/272811.html

(0)
上一篇 2022年7月9日 13:54
下一篇 2022年7月9日 14:20

相关推荐

发表回复

登录后才能评论