JavaScript 数组 findLastIndex()
示例 1
查找最后一个值大于 18 的元素
const ages = [3, 10, 18, 20];
ages.findLastIndex(checkAge);
function checkAge(age) {
return age > 18;
}
尝试一下 »
描述
The findLastIndex()
方法对每个数组元素执行一个函数。
The findLastIndex()
方法返回通过测试的最后一个元素的索引(位置)。
The findLastIndex()
方法如果未找到匹配项,则返回 -1。
The findLastIndex()
方法不会对空数组元素执行函数。
The findLastIndex()
方法不会更改原始数组。
数组查找方法
方法 | 查找 |
---|---|
indexOf() | 具有指定值的第一个元素的索引 |
lastIndexOf() | 具有指定值的最后一个元素的索引 |
find() | 通过测试的第一个元素的值 |
findIndex() | 通过测试的第一个元素的索引 |
findLast() | 通过测试的最后一个元素的值 |
findLastIndex() | 通过测试的最后一个元素的索引 |
语法
array.findLastIndex(function(currentValue, index, arr), thisValue)
参数
参数 | 描述 |
function() | 必需。 要为每个数组元素运行的函数。 |
currentValue | 必需。 当前元素的值。 |
index | 可选。 当前元素的索引。 |
arr | 可选。 当前元素的数组。 |
thisValue | 可选。默认值 undefined 。传递给函数作为其 this 值的值。 |
返回值
类型 | 描述 |
数字 | 通过测试的最后一个元素的索引。 否则为 -1。 |
更多示例
查找最后一个值高于输入值的值
<p><input type="number" id="toCheck" value="18"></p>
<button onclick="myFunction()">测试</button>
<p>高于以下任何值: <span id="demo"></span></p>
<script>
const numbers = [4, 12, 16, 20];
function checkValue(x) {
return x > document.getElementById("toCheck").value;
}
function myFunction() {
document.getElementById("demo").innerHTML = numbers.findLastIndex(checkValue);
}
</script>
尝试一下 »
浏览器支持
findLastIndex()
是 ES2023 功能。
它在所有现代浏览器中都得到支持,从 2023 年 7 月开始
Chrome 110 | Edge 110 | Firefox 115 | Safari 16.4 | Opera 96 |
2023 年 2 月 | 2023 年 2 月 | 2023 年 7 月 | 2023 年 3 月 | 2023 年 5 月 |