返回 Ages[] 中 18 岁或以上的所有值的数组:
const ages = [32, 33, 16, 40];
const result = ages.filter(checkAdult);
function checkAdult(age) {
return age >= 18;
}
亲自试一试 »
这个filter()
方法创建一个新数组,其中填充了通过函数提供的测试的元素。
这个filter()
方法不会对空元素执行该函数。
这个filter()
方法不会改变原始数组。
array.filter(
function(currentValue, index, arr), thisValue)
Parameter | Description |
function() | Required. A function to run for each array element. |
currentValue | Required. The value of the current element. |
index | Optional. The index of the current element. |
arr | Optional. The array of the current element. |
thisValue | Optional. Default undefined A value passed to the function as its this value. |
类型 | 描述 |
数组 | 通过测试的元素数组。 如果没有元素通过测试,则为空数组。 |
返回 Ages[] 中超过特定数字的值:
<p><input type="number" id="ageToCheck" value="30"></p>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
<script>
const ages = [32, 33, 12, 40];
function checkAge(age) {
return age > document.getElementById("ageToCheck").value;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.filter(checkAge);
}
</script>
亲自试一试 »
filter()
是 ECMAScript5 (ES5) 功能。
所有浏览器完全支持 ES5 (JavaScript 2009):
Chrome | Edge | Firefox | Safari | Opera | IE |
Yes | Yes | Yes | Yes | Yes | 9-11 |
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!