例
獲得具有18個或更多的值的數組中的第一個元素的索引:
var ages = [3, 10, 18, 20];
function checkAdult(age) {
return age >= 18;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.findIndex(checkAdult);
}
其結果將是:
2
試一試» 更多“試一試”的例子。
定義和用法
該findIndex()方法返回在通過測試(作為一個功能提供)數組的第一個元素的索引。
該findIndex()方法為每個數組中存在的元素,一旦執行函數:
- 如果發現其中函數返回一個真值數組元素,findIndex()返回數組元素的索引(和不檢查剩餘的值)
- 否則,返回undefined
注:findIndex()沒有價值觀不執行功能數組元素。
注意:findIndex()不改變原來的陣列。
瀏覽器支持
在表中的數字指定完全支持方法的第一個瀏覽器的版本。
方法 | |||||
---|---|---|---|---|---|
findIndex() | 45.0 | 12.0 | 25.0 | 7.1 | 32.0 |
句法
array.findIndex( 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:
|
||||||||
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的版本: | ECMAScript中6 |
更多示例
例
獲得具有上述特定數量的值的數組中的第一個元素的索引:
<p>Minimum age: <input type="number" id="ageToCheck" value="18"></p>
<button onclick="myFunction()">Try it</button>
<p>Any ages above:
<span id="demo"></span></p>
<script>
var ages = [4, 12, 16, 20];
function checkAdult(age) {
return age >=
document.getElementById("ageToCheck").value;
}
function
myFunction() {
document.getElementById("demo").innerHTML = ages.findIndex(checkAdult);
}
</script>
試一試» JavaScript的陣列參考