JavaScript 中的 filter 函數是一個非常強大的函數,它可以幫助我們篩選出數組中符合特定條件的元素,并返回一個新的數組。
該函數接受一個函數作為參數,這個函數會應用于數組中的每一個元素,并返回一個布爾值,如果返回值為 true,則該元素會被保留在新數組中,否則該元素將被過濾掉。
讓我們來看一些例子來更好地理解 filter 函數的應用:
const numbers = [1, 2, 3, 4, 5, 6]; const evenNumbers = numbers.filter(function(num) { return num % 2 === 0; }); console.log(evenNumbers); // 輸出 [2, 4, 6]
在上面的例子中,我們首先定義了一個數組 numbers,然后使用 filter 函數來篩選出其中的偶數。我們定義了一個匿名函數作為 filter 函數的參數,該函數接受一個參數 num,代表數組中的每一個元素,然后返回 num%2===0 的值。當 num%2===0 時,表示該數字為偶數,該數字會被保留在新的數組 evenNumbers 中,否則會被過濾掉。
除了可以使用匿名函數作為參數,我們也可以使用 arrow function,讓代碼更加簡潔:
const numbers = [1, 2, 3, 4, 5, 6]; const evenNumbers = numbers.filter(num =>num % 2 === 0); console.log(evenNumbers); // 輸出 [2, 4, 6]
上面的例子與之前的例子等價,只是使用了 arrow function 來定義函數。
除了可以篩選出符合特定條件的元素外,我們也可以使用 filter 函數來篩選出符合特定類型的元素:
const products = [ { name: "apple", type: "fruit" }, { name: "potato", type: "vegetable" }, { name: "orange", type: "fruit" }, { name: "onion", type: "vegetable" } ]; const fruits = products.filter(function(product) { return product.type === "fruit"; }); console.log(fruits); // 輸出 [{ name: "apple", type: "fruit" }, { name: "orange", type: "fruit" }]
在上面的例子中,我們定義了一個數組 products,每個元素都代表商品的屬性,包括名稱和類型。我們使用 filter 函數來篩選出類型為水果的商品,并將它們保存在新的數組 fruits 中。
通過上面的例子,我們可以看到 filter 函數的強大之處。通過一個簡單的函數,它可以幫助我們輕松地篩選出符合特定條件的元素,并返回一個新的數組,讓我們的開發工作變得更加高效。
上一篇css3京東首頁
下一篇ota 系統 php