最新的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的阵列参考