选择奇偶 filter用法

filter()方法将匹配元素集合缩减为匹配指定选择器的元素

如果给定表示 DOM 元素集合的 jQuery 对象,.filter() 方法会用匹配元素的子集构造一个新的 jQuery 对象。所使用的选择器会测试 每个元素;所有匹配该选择器的元素都会包含在结果中。

:even 选择器 选取每个带有偶数index值的元素(比如 2 4 6)

index值从0开始,所有第一个元素是偶数(0)

最常见的用法:与其他元素/选择器一起使用,来选择指定的组中偶数序号的元素

语法:$(":even")

:odd 选取每个带有奇数index值的元素

filter常用情况

1)创建一个数组,判断数组中是否存在某个值

var newarr = [
  { num: 1, val: 'ceshi', flag: 'aa' },
  { num: 2, val: 'ceshi2', flag: 'aa2'  }
]
console.log(newarr.filter(item => item.num===2 ))    //控制台打印 第二条数据所有信息

2) 去掉空数组空字符串、undefined、null

var arr = ['1','2',undefined, '3.jpg',undefined]
var newArr = arr.filter(item => item)
console.log(newArr)

var arr = ['1','2',null, '3.jpg',null]
var newArr = arr.filter(item => item)
console.log(newArr)

>//空字符串里面不能包含空格
var arr = ['1','2','', '3.jpg','']
var newArr = arr.filter(item => item)
console.log(newArr)

3)去掉数组中不符合项

var arr = [20,30,50, 96,50]
var newArr = arr.filter(item => item>40)
console.log(newArr)

4)过滤不符合项

var arr = ['10','12','23','44','42']
var newArr = arr.filter(item => item.indexOf('2')<0)
console.log(newArr)

5)数据去重

var arr = [1, 2, 2, 3, 4, 5, 5, 6, 7, 7,8,8,0,8,6,3,4,56,2];
var arr2 = arr.filter((x, index,self)=>self.indexOf(x)===index)  
console.log(arr2); //[1, 2, 3, 4, 5, 6, 7, 8, 0, 56]

猜你喜欢

转载自blog.csdn.net/ni_meng_/article/details/83377185