美文网首页
JavaScript高阶函数之filter

JavaScript高阶函数之filter

作者: wijgat | 来源:发表于2018-11-06 07:38 被阅读0次

函数作用

filter用于把Array的某些元素过滤掉,然后返回剩下的元素(原数组不变)
map()类似,Arrayfilter()也接收一个函数。和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是true还是false决定保留还是丢弃该元素。
在一个Array 中只保留奇数:

var arr = [1, 2, 4, 5, 6, 9, 10, 15];
var r = arr.filter(function (x) {
    return x % 2 !== 0;
});
r; // [1, 5, 9, 15]     

元素去重:

var
    r,
    arr = ['apple', 'strawberry', 'banana', 'pear', 'apple', 'orange', 'orange', 'strawberry'];
r = arr.filter(function (element, index, self) {
    return self.indexOf(element) === index;
});

相关文章

网友评论

      本文标题:JavaScript高阶函数之filter

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