当前位置:网站首页>JS数组过滤
JS数组过滤
2022-08-01 19:19:00 【网瘾颓废】
每五个组成一个数组
var spArray = function(N,Q)
{
var R = [],F;
for (F = 0;F < Q.length;) {
R.push(Q.slice(F,F += N))
}
return R
}
var arr = [1,2,3,4,5,6,7,8,9,10,11,12,13,14];
console.log(spArray(5,arr))
根据一个数组 过滤出另一个数组
var aim = [
{name:‘Anne’, age: 23, gender:‘female’},
{name:‘Leila’, age: 16, gender:‘female’},
{name:‘Jay’, age: 19, gender:‘male’},
{name:‘Mark’, age: 40, gender:‘male’}
]
var nameArr=[‘Leila’,‘Jay’]
// 根据多个名字筛选
function filterByName1(aim, nameArr) {
let newArray = []
aim.forEach(item => { //遍历arr
//此处如果需要留下重复元素,则将!去掉即可
//arr中的元素如果在ids中不存在,则添加到新数组中
if (!nameArr.includes(item.name)) {
newArray.push(item);
};
})
return newArray
}
console.log(filterByName1(aim,nameArr))
多条件过滤
let arr = [{
name: "q1121",
age: 12,
address: "辽宁大连1"
},
{
name: "q44",
age: 12,
address: "辽宁大连4"
},
{
name: "q55",
age: 12,
address: "辽宁大连5"
},
{
name: "q222",
age: 13,
address: "辽宁大连2"
},
{
name: "q332",
age: 12,
address: "辽宁沈阳1"
}
];
//筛选条件
let filter = {
name: "",
age: 12,
address: "辽宁",
};
//拿到有值的参数
let tempFilter = {};
for(key in filter) {
if(typeof(filter[key]) != "undefined" && typeof(filter[key]) != "null" && filter[key] != null && filter[key] != "") {
tempFilter[key] = filter[key];
}
}
//筛选
let resultArr = arr.filter(
(item) => {
let flag = false;
for(key in tempFilter) {
if(item[key].toString().indexOf(tempFilter[key].toString()) >= 0) {
flag = true;
} else {
flag = false;
break;
}
}
if(flag) {
return item;
}
}
);
console.log(resultArr);
边栏推荐
- The life cycle and scope
- 如何记录分析你的炼丹流程—可视化神器Wandb使用笔记【1】
- The XML configuration
- 【软考软件评测师】基于规则说明的测试技术下篇
- MySQL开发技巧——并发控制
- 【pyqt5】自定义控件 实现能够保持长宽比地缩放子控件
- Risc-v Process Attack
- 基于flowable的upp(统一流程平台)运行性能优化
- No need to crack, install Visual Studio 2013 Community Edition on the official website
- ExcelPatternTool: Excel表格-数据库互导工具
猜你喜欢

基于flowable的upp(统一流程平台)运行性能优化

Database Plus 的云上之旅:SphereEx 正式开源 ShardingSphere on Cloud 解决方案

Keras深度学习实战——交通标志识别

小白系统初始化配置资源失败怎么办

明日盛会|ApacheCon Asia 2022 Pulsar 技术议题一览

Win11如何删除升级包?Win11删除升级包的方法

SENSORO成长伙伴计划 x 怀柔黑马科技加速实验室丨以品牌力打造To B企业影响力

文库网站建设源码分享

LeetCode 0152. Product Maximum Subarray: dp + Roll in Place

MLX90640 Infrared Thermal Imager Temperature Measurement Module Development Notes (Complete)
随机推荐
C#/VB.NET 从PDF中提取表格
硬件大熊原创合集(2022/07更新)
TestNG multiple xml for automated testing
基于flowable的upp(统一流程平台)运行性能优化
Find the sum of two numbers
483-82 (23, 239, 450, 113)
modbus总线模块DAM-8082
Become a Contributor in 30 minutes | How to participate in OpenHarmony's open source contributions in multiple ways?
随时随地写代码--基于Code-server部署自己的云开发环境
ExcelPatternTool: Excel表格-数据库互导工具
Database Plus 的云上之旅:SphereEx 正式开源 ShardingSphere on Cloud 解决方案
力扣刷题之求两数之和
数值矩阵的图形表示
DAO开发教程【WEB3.0】
重保特辑|拦截99%恶意流量,揭秘WAF攻防演练最佳实践
Multi-Party Threshold Private Set Intersection with Sublinear Communication-2021: Interpretation
#yyds干货盘点# 面试必刷TOP101: 链表中倒数最后k个结点
When compiling a program with boost library with VS2013, it prompts fatal error C1001: An internal error occurred in the compiler
不要再使用MySQL online DDL了
kubernetes-部署nfs存储类