美文网首页
filter ES6方法

filter ES6方法

作者: 李亚_45be | 来源:发表于2019-07-11 16:29 被阅读0次

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

var newarr = [

  { num: 1, val: 'ceshi', flag: 'aa' },

  { num: 2, val: 'ceshi2', flag: 'aa2'  }

]

console.log(newarr.filter(item => item.num===2 ))

//答案 0: {num: 2, val: "ceshi2", flag: "aa2"}

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]

数组去重方法二: 用set 去重:

let arr = [1,2,2,3,4,5,5,6];

let newArr =Array.from(new Set(arr))

console.log(newArr)  // [1,2,3,4,5,6]

6 filter回调函数

var arr = ['A', 'B', 'C'];

var r = arr.filter(function (element, index, self) {

 console.log(element); // 依次打印'A', 'B', 'C'

 console.log(index); // 依次打印0, 1, 2

 console.log(self); // self就是变量arr

 return true;

});

相关文章

网友评论

      本文标题:filter ES6方法

      本文链接:https://www.haomeiwen.com/subject/sjmdkctx.html