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}]
javaScript 获取对象数组的对象里面想要的属性,返回一个新的数组的更多相关文章
- JS对象 数组连接 concat() 方法用于连接两个或多个数组。此方法返回一个新数组,不改变原来的数组。 语法 arrayObject.concat(array1,array2,.arrayN)
concat() 方法用于连接两个或多个数组.此方法返回一个新数组,不改变原来的数组. 语法 arrayObject.concat(array1,array2,...,arrayN) 参数说明: 注意 ...
- Linux下利用json-c从一个json数组中提取每一个元素中的部分字段组成一个新json数组
先把代码贴上来,有时间整理一下 首先说一下要实现的功能: 假定现在有一个json格式的字符串,而且他是一个josn中的数组,比如: [ { "id": "NEW20170 ...
- concat() 方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。
var arr1 = ['a', 'b', 'c']; var arr2 = ['d', 'e', 'f']; var arr3 = arr1.concat(arr2); // arr3 is a n ...
- 将两个数组相同index的value合并成一个新的value组成一个新的数组
将两个数组相同index的value合并成一个新的value组成一个新的数组 前提: 这两个数组的长度相同 生成后的新数组长度也相同 返回值都是对象 把rows对象的key和value弄成两个数组, ...
- Jsの练习-将 数组中值为0 的去掉,不为0的存入一个新的数组
要求:将 数组中值为0 的去掉,不为0的存入一个新的数组 代码如下: <!DOCTYPE html> <html lang="en"> <head&g ...
- java:合并两个排序的整数数组A和B变成一个新的数组。新数组也要有序。
合并两个排序的整数数组A和B变成一个新的数组.新数组也要有序. 样例 1: 输入: A=[1], B=[1] 输出:[1,1] 样例解释: 返回合并后的数组. 样例 2: 输入: A=[1,2,3,4 ...
- 有个数组 我现在需要把数组里面的值按照n个一组,赋予一个新的数组
有个数组 我现在需要把数组里面的值按照七个一组,赋予一个新的数组
- Request.getparameternames 获取form表单里面所有的请求参数 。 返回一个Enumeration类型的枚举.
通过Enumeration的hasMoreElements()方法遍历.再由nextElement()方法获得枚举的值.此时的值是form表单中所有控件的name属性的值. 最后通过request.g ...
- javascript 获取排列后的对象建值
function getSortedParameter (parameterObject){ let attributes = []; parameterObject = parameterObjec ...
- 请用js写一个函数,实现获取浏览器url中查询字符串中的参数并返回一个数组
<script> console.log(getUrlArr()); function getUrlArr() { var arr = []; var url = "http:/ ...
随机推荐
- centOS 相关运维指令
1.检查CPU信息: cat /proc/cpuinfo lscpu 2.top输入 top 命令,然后可以再按 m 切换显示内容 其中 KiB Mem 行为物理内存情况,单位为KB 3.free - ...
- Javascript高级程序设计(000)
该分类下为学习Javascript高级程序设计的笔记,希望自己可以坚持学习,努力学习!加油! 一.组织结构 第 1 章,介绍 JavaScript 的起源:从哪里来,如何发展,以及现今的状况.这一章会 ...
- window.location.href 用法总结
想做好前端,这几种用法一定要了解: 在做网页前端的时候会经常用到JavaScript其中window.location.href用得非常多: 其中最常用的有windows.location.href= ...
- 关于DIFF插件的使用
diff插件主要是对比 两个字符串/数组/json对象 等等 差异得问题,多数情况用到测试,甄别错误场景 我主要使用得场景就是在系统日志中对比两组json得差异 1. 安装插件 npm install ...
- myJRebel 已不可用
周末在家里撸代码,突然 IDEA 提示 JRebel 需要激活. 原来一直使用的 myJRebel 的激活码,天真的以为是我的网络问题,尝试重新激活,结果不管用,就想去 myJrebel 的网站上去看 ...
- pure-ftpd(源码编译)中文编码问题
1.由于版本问题,该软件有些版本不能编译--with-rfc2640选项.解决办法为换成相应低一点的版本 tar -xf pure-ftpd-1.0.42.tar.gz cd pure-ftpd-1. ...
- pip 下载换源
命令:[pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple]
- jquery 中根据日期计算天数,以及去掉字符串中的空格
//方法 增添dayNumber天 ,dates:日期 年月日 function SubDay(dayNumber, dates) { var date= new Date(dates ); date ...
- ElasticSearch (Es) 分组查询 记录
首先表对应的实体类型: public class bm_info{ /// <summary> /// 单位 /// </summary> public string sou ...
- 合格できる日本語能力試験, N1.PDF
书本详情 合格できる日本語能力試験, N1种类:Languages - Japanese Language Reference年:2010出版:Shohan.出版社:Aruku语言:japanese页 ...