更新時間:2021-07-27 16:30:46 來源:動力節(jié)點(diǎn) 瀏覽1233次
這是一個數(shù)組方法,數(shù)組調(diào)用后返回一個新的數(shù)組,filter函數(shù)的參數(shù)是一個函數(shù)(回調(diào)函數(shù))里面有一個return
當(dāng)return后面的表達(dá)式為true時保留數(shù)組當(dāng)前項(xiàng)到新數(shù)組
一般只使用回調(diào)函數(shù)的第一個參數(shù),表示數(shù)組的每一項(xiàng)
例如,在一個Array中,刪掉偶數(shù),只保留奇數(shù),可以這么寫:
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]
filter()接收的回調(diào)函數(shù),其實(shí)可以有多個參數(shù)。通常我們僅使用第一個參數(shù),表示Array的某個元素。回調(diào)函數(shù)還可以接收另外兩個參數(shù),表示元素的位置和數(shù)組本身:
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,可以巧妙地去除Array的重復(fù)元素:
'use strict';
var
r,
arr = ['apple', 'strawberry', 'banana', 'pear', 'apple', 'orange', 'orange', 'strawberry'];
r = arr.filter(function (element, index, self) {
return self.indexOf(element) === index;
});
console.log(r.toString());
以上就是動力節(jié)點(diǎn)小編介紹的"Filter函數(shù)的使用",希望對大家有幫助,想了解更多可查看Filter過濾器。動力節(jié)點(diǎn)在線學(xué)習(xí)教程,針對沒有任何Java基礎(chǔ)的讀者學(xué)習(xí),讓你從入門到精通,主要介紹了一些Java基礎(chǔ)的核心知識,讓同學(xué)們更好更方便的學(xué)習(xí)和了解Java編程,感興趣的同學(xué)可以關(guān)注一下。
初級 202925
初級 203221
初級 202629
初級 203743