ES5新增数组方法(1):filter

检测数组元素,并返回符合条件所有元素的数组。

1、过滤数组中不符合条件的元素

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

// 方式一
let newArr = arr.filter((value, index, array) => {
    if(value % 2 === 0) {
        return value
    }
});
console.log(newArr);// [ 2, 4, 6 ]

// 方式二
newArr = arr.filter((item) => item % 2 === 0);
console.log(newArr);// [ 2, 4, 6 ]

2、过滤数组中空字符串、undefined、null的元素

let arr = ['a', '', 'b', undefined, 'c', null];
let newArr = arr.filter(item => item);
console.log(newArr);// [ 'a', 'b', 'c' ]

3、过滤数组中重复的元素(数组去重)

let arr = [1, 2, 2, 3, 3, 3, 4, 5];
let newArr = arr.filter((value, index, array) => array.indexOf(value) === index);
console.log(newArr);// [ 1, 2, 3, 4, 5 ]

 

posted @ 2019-01-07 11:10  寒爵  阅读(1182)  评论(0编辑  收藏  举报