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

javaScript 获取对象数组的对象里面想要的属性,返回一个新的数组的更多相关文章

  1. JS对象 数组连接 concat() 方法用于连接两个或多个数组。此方法返回一个新数组,不改变原来的数组。 语法 arrayObject.concat(array1,array2,.arrayN)

    concat() 方法用于连接两个或多个数组.此方法返回一个新数组,不改变原来的数组. 语法 arrayObject.concat(array1,array2,...,arrayN) 参数说明: 注意 ...

  2. Linux下利用json-c从一个json数组中提取每一个元素中的部分字段组成一个新json数组

    先把代码贴上来,有时间整理一下 首先说一下要实现的功能: 假定现在有一个json格式的字符串,而且他是一个josn中的数组,比如: [ { "id": "NEW20170 ...

  3. concat() 方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。

    var arr1 = ['a', 'b', 'c']; var arr2 = ['d', 'e', 'f']; var arr3 = arr1.concat(arr2); // arr3 is a n ...

  4. 将两个数组相同index的value合并成一个新的value组成一个新的数组

    将两个数组相同index的value合并成一个新的value组成一个新的数组 前提: 这两个数组的长度相同 生成后的新数组长度也相同 返回值都是对象 把rows对象的key和value弄成两个数组, ...

  5. Jsの练习-将 数组中值为0 的去掉,不为0的存入一个新的数组

    要求:将 数组中值为0 的去掉,不为0的存入一个新的数组 代码如下: <!DOCTYPE html> <html lang="en"> <head&g ...

  6. java:合并两个排序的整数数组A和B变成一个新的数组。新数组也要有序。

    合并两个排序的整数数组A和B变成一个新的数组.新数组也要有序. 样例 1: 输入: A=[1], B=[1] 输出:[1,1] 样例解释: 返回合并后的数组. 样例 2: 输入: A=[1,2,3,4 ...

  7. 有个数组 我现在需要把数组里面的值按照n个一组,赋予一个新的数组

    有个数组  我现在需要把数组里面的值按照七个一组,赋予一个新的数组

  8. Request.getparameternames 获取form表单里面所有的请求参数 。 返回一个Enumeration类型的枚举.

    通过Enumeration的hasMoreElements()方法遍历.再由nextElement()方法获得枚举的值.此时的值是form表单中所有控件的name属性的值. 最后通过request.g ...

  9. javascript 获取排列后的对象建值

    function getSortedParameter (parameterObject){ let attributes = []; parameterObject = parameterObjec ...

  10. 请用js写一个函数,实现获取浏览器url中查询字符串中的参数并返回一个数组

    <script> console.log(getUrlArr()); function getUrlArr() { var arr = []; var url = "http:/ ...

随机推荐

  1. 前端日期控件,在设置了readonly的情况,还能选择日期的解决办法

    去掉只读和增加onclick属性: $("#date").removeAttr("readonly"); $("#date").attr(& ...

  2. 数据库基础day1

    数据库基础 MySQL概述 SQL 函数 概念 函数 是指一段可以直接被另一段程序调用的程序或代码. 3.1字符串函数 函数 功能 CONCAT(S1,S2,...Sn) 字符串拼接,将S1,S2,. ...

  3. Apache druid笔记

    Apache Duid学习笔记2 1.历史节点的查询效率与内存数据比成正比,内存越大则读取磁盘的次数越少, 历史节点内存越大总数据量越小则查询速度越快. 2.缓存机制可以选择外部和内部缓存,外部缓存如 ...

  4. OI常见缩写

    AC = Apareciym 显形咒 CE = Crucio 钻心咒 PE = Petrificus 石化咒 RE = Reducto 粉碎咒 WA = Wingardium Leviosa 悬浮咒 ...

  5. web基础(3):CSS样式

    chapter4 CSS样式 html是网页的内容和结构:CSS是网页的样式.内容和样式相分离,便于修改样式. CSS cascading style sheets 层叠样式表.一个内容上面可以添加多 ...

  6. nacos启动失败

    报错如下: 通过第二个圈可以看出,没有发现9848端口,才想起来自己Spring Cloud Alibaba依赖对应的nacos版本是2.0.4,而启动的nacos服务却是1.x版本,才导致这个报错. ...

  7. JAVA查漏补缺 1

    JAVA查漏补缺 1 目录 JAVA查漏补缺 1 基本数据类型 数组 方法参数传递机制 基本数据类型 数据类型 关键字 取值范围 内存占用(字节数) 整型 byte -128~127 1 整型 sho ...

  8. Gitbook编写JSON文件

    title: Gitbook编写JSON文件 # 标题 date: 2020-10-31 16:34:30 updated: 2020-12-31 categories: 前端 tags: JSON ...

  9. 【jquery easyUI 拓展

    jquery-easyui本身没有提供列锁定/解锁的接口,并且其原有的列隐藏/显示在符合表头的情况下会出现错位,我在项目中遇到了这两个问题,在参考了网上许多解决方案后,编写了一个拓展插件,基本上解决了 ...

  10. unittest框架-测试报告模板【BeautifulReport】安装、配置使用、生成带截图的测试报告

    一.下载BeautifulReport模块 1.下载BeautifulReport模块 下载地址:https://github.com/TesterlifeRaymond/BeautifulRepor ...