js 操作数组(过滤对应数据)
一、过滤掉相应数据(带有key)
var fileList = {
"85968439868a92": [{name: 'food.jpeg'}, {name: 'ood.jpeg'}],
"": [{name: 'd.jpeg'}, {name: 'doe.jpeg'}]
};
function demo() {
Object.keys(fileList).forEach(function (k) {
console.log(k)
console.log(fileList[k])
var f = fileList[k].filter(gl)
console.log(f)
fileList[k] = f
})
console.log(fileList)
}
function gl(ele) {
console.log()
console.log(ele)
if (ele.name !== 'food.jpeg'){
return ele
}
}
demo()
二、过滤掉含有某些id 的数据
比如:如何去除数组a中 id=15和id=3 的对象
var a = [{ id: }, { id: - }, { id: }, { id: }, { id: 12.2 }];
var b = [, ];
var c = a.filter(item => { return !b.includes(item.id); }); console.log(c)
三、过滤多维数组的相应数据
function f () {
var treeData = [
{a:'',sub:[{aaa:'ggg',is_show: }]},
{a:'hhh',sub:[{aaa:'rrr',is_show: }]},
]
var a = JSON.parse(JSON.stringify(treeData)).map(item => {
console.log(item)
if (item.sub) {
item.sub = item.sub.filter(sub => sub.is_show == )
}
return item;
}).filter(item => item.sub && item.sub.length);
console.log(a)
}
四、筛选出对象中有值的数据
var query= {
a1: "nn",
a2: "",
a3: "bb"
} var a = Object.keys( query ).reduce( ( result, key ) => {
if ( query[ key ] !== "" ) {
result[ key ] = query[ key ];
}
return result;
}, {} );
console.log(a)
js 操作数组(过滤对应数据)的更多相关文章
- JS操作数组的常用方式
一.JS操作数组一:删除指定的元素 splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目. //查找指定元素下标 Array.prototype.indexOf = function ...
- js限制输入数字能输入小数点,js定义数组,js往数组中添加数据,js将字符型转为数字型,除法结果保留两位小数——js小测:计算比赛得分
一个朋友跟我说要去给某个比赛算分: 规则:去掉最低分最高分求平均分: 最近在学习大数据可视化——图谱,用到js一些东西,所以今天就用js练练 用到知识点: js限制输入数字能输入小数点,js定义数组, ...
- JS操作数组常用的方法
JS操作Array对象的方法 concat(arr1,arr2,...):连接数组indexOf(value):返回数组中value的第一个索引join(separator):将数组中所有的元素连接由 ...
- JS 操作数组对象
我们在操作数组时,加入数组中是以对象的形式存在,例如: 那么我们会涉及到去重复,去掉为0的数组中的对象,js代码如下: function getItemList(gid, totalMoney, ad ...
- js操作数组元素
一, 删除数组指定的某个元素 首先可以给JS的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引,代码为: Array.prototype.indexOf = function(val) ...
- js 操作数组的一些方法
1.从数组中获取最大的数 function getMaxfromarr(arr) { var lasti = 0; for (var i = 0; i < arr.length; i++) { ...
- js操作数组
一.数组的声明方式: var colors = new Array();//创建数组 var colors = new Array(20);//创建20个长度的数组 var colors = new ...
- js 操作数组
数组的增删 数组的尾部插入一个元素 var nums = [0,1,2,3,4]; nums.push(5,6,6); //[0,1,2,3,4,5,6,6] 删除数组尾部的元素 var nums = ...
- js操作table表格导出数据到excel方法
js导出excel资料很少,网上也找了很多,基本都不能用,要么只能是IE用,还必须要权限,这是非常不好的.后来到github上找到table2excel.js,虽然可以用,但仍然对IE支持不够,也算不 ...
随机推荐
- Andrew Ng机器学习课程笔记--week5(上)
Neural Networks: Learning 内容较多,故分成上下两篇文章. 一.内容概要 Cost Function and Backpropagation Cost Function Bac ...
- archlinux系统安装博通B43XX系列无线网卡驱动
我的无线网卡是博通的B43xx系列,大家都知道博通对于其Wifi卡在 GNU/Linux 上的支持不好可谓是臭名昭著. 用 lspci -vnn -d 14e4: 或者 lspci -vnn | gr ...
- Tensorflow之MNIST解析
要说2017年什么技术最火爆,无疑是google领衔的深度学习开源框架Tensorflow.本文简述一下深度学习的入门例子MNIST. 深度学习简单介绍 首先要简单区别几个概念:人工智能,机器学习,深 ...
- java private修饰的类和变量
private主要用来修饰变量和方法,一般不会用来修饰类,除非是内部类. 1.new对象 被private修饰的变量和方法,只能在自己对象内部使用,其他对象即使是new你这个对象也是获取不到被priv ...
- 关于C#开发 windows服务进程
最近在做一个物联网项目,其中有一个模块是需要实现热水工程的自动化补水和回水功能 实现的方式有多种,我选用了VS C#的Windows服务方式. 首先是创建一个windows服务项目(名称随你喜欢的规范 ...
- WebServices 之 WSDL
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt234 一,WSDL概述 WebServices Description La ...
- js并行加载,顺序执行
js并行加载,顺序执行 <script>运行脚本或加载外部文件时,会阻塞页面渲染,阻塞其他资源的加载.如果页面中需要加载多个js文件,在古老浏览器中性能会比较糟糕. 因此有了最原始的优化原 ...
- 理解oracle中连接和会话
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp44 理解oracle中连接和会话 1. 概念不同:概念不同: 连接是指物 ...
- HTML特殊符号、常用字符实体
HTML特殊符号对照表.常用的字符实体 最常用的字符实体 显示结果 描述 实体名称 实体编号 空格 <</td> 小于号 < < > 大于号 > ...
- 转:【Java集合源码剖析】ArrayList源码剖析
转载请注明出处:http://blog.csdn.net/ns_code/article/details/35568011 本篇博文参加了CSDN博文大赛,如果您觉得这篇博文不错,希望您能帮我投一 ...