最新的Web開發教程
 

JavaScript陣列濾波器()方法

JavaScript的陣列參考 JavaScript的陣列參考

返回數組的年齡是18歲以上的所有值的數組:

var ages = [32, 33, 16, 40];

function checkAdult(age) {
    return age >= 18;
}

function myFunction() {
    document.getElementById("demo").innerHTML = ages.filter(checkAdult);
}

其結果將是:

32,33,40
試一試»

更多“試一試”的例子。


定義和用法

filter()方法創建充滿了通過測試(作為一個功能提供)所有的數組元素的數組。

注:過濾器()沒有價值觀不執行數組元素的功能。

注:過濾器()不改變原來的數組。


瀏覽器支持

在表中的數字指定完全支持方法的第一個瀏覽器的版本。

方法
filter() 9 1.5

句法

array.filter( function(currentValue,index,arr), thisValue )

參數值

Parameter Description
function(currentValue, index,arr) Required. A function to be run for each element in the array.
Function arguments:
Argument Description
currentValue Required. The value of the current element
index Optional. The array index of the current element
arr Optional. The array object the current element belongs to
thisValue Optional. A value to be passed to the function to be used as its "this" value.
If this parameter is empty, the value "undefined" will be passed as its "this" value

技術細節

返回值: 包含通過測試的所有的數組元素的數組。 如果沒有的元素通過測試它返回一個空數組。
JavaScript的版本: 1.6

例子

更多示例

返回年齡陣列是特定數量或以上的所有值的數組:

<p>Minimum age: <input type="number" id="ageToCheck" value="18"></p>
<button onclick="myFunction()">Try it</button>

<p>All ages above minimum: <span id="demo"></span></p>

<script>
var ages = [32, 33, 12, 40];

function checkAdult(age) {
    return age >= document.getElementById("ageToCheck").value;
}

function myFunction() {
    document.getElementById("demo").innerHTML = ages.filter(checkAdult);
}
</script>
試一試»

JavaScript的陣列參考 JavaScript的陣列參考