// 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}]

最新文章

  1. Redis 5种数据结构使用及注意事项
  2. IIS不能下载ini文件
  3. git 创建远程分支和删除 master 分支
  4. AutoIt3(AU3)开发的智能驱动安装工具,用于系统封装,支持参数静默启动
  5. Gson的简单使用
  6. Thinkphp中field和getField
  7. ReferenceTypeDemo
  8. linux下批量杀死进程
  9. Apache无法正常启动(配置多个监听端口)
  10. Spark学习笔记——基于MLlib的机器学习
  11. CMU-15445 LAB1:Extendible Hash Table, LRU, BUFFER POOL MANAGER
  12. Hadoop计算中的Shuffle过程(转)
  13. Spring—Ioc
  14. oracle表的统计信息完全正确,执行计划无故改变。原厂人员如是回复
  15. docker部署mysql
  16. 关于 bitset 的一些题目
  17. Filter学习(二)Filter使用Decorator设计模式
  18. Event Driven Architecture
  19. 计算阶乘的和v2.0(4分)
  20. vuejs中的生命周期

热门文章

  1. vue.use的原理
  2. ES之分析器(Analyzer)及拼音分词器
  3. Java面向对象之Object类
  4. Unity 打包到XCode自动化设置参数
  5. styled-components 全局样式定义,由injectGlobal改为createGlobalStyle
  6. QT部署安装以及后续更新(一)
  7. linux 中后台运行python脚本
  8. [服务器]Windows Server 2008 64位1核1G安装SQL Server2008
  9. 12组-Beta冲刺-3/5
  10. python生成一个WAV文件的正弦波