JavaScript Array findIndex ()
ví dụ 1
Tìm phần tử đầu tiên có giá trị trên 18:
const ages = [3, 10, 18, 20];
ages.findIndex(checkAge);
function checkAge(age) {
return age > 18;
}
Định nghĩa và Cách sử dụng
Phương findIndex()
thức thực thi một hàm cho mỗi phần tử mảng.
Phương findIndex()
thức này trả về chỉ số (vị trí) của phần tử đầu tiên vượt qua kiểm tra.
Phương findIndex()
thức trả về -1 nếu không tìm thấy kết quả phù hợp nào.
Phương findIndex()
thức không thực thi hàm cho các phần tử mảng trống.
Phương findIndex()
thức không thay đổi mảng ban đầu.
Cú pháp
array.findIndex(function(currentValue, index, arr), thisValue)
Thông số
Parameter | Description |
function() | Required. A function to be 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. |
Giá trị trả lại
Loại | Sự miêu tả |
Một số |
Chỉ số của phần tử đầu tiên vượt qua bài kiểm tra. Ngược lại -1. |
Hỗ trợ trình duyệt
findIndex()
là một tính năng ECMAScript6 (ES6).
ES6 (JavaScript 2015) được hỗ trợ trong tất cả các trình duyệt hiện đại:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
findIndex()
không được hỗ trợ trong Internet Explorer 11 (hoặc phiên bản cũ hơn).
Các ví dụ khác
Tìm phần tử đầu tiên có giá trị cao hơn giá trị đầu vào:
<p><input type="number" id="toCheck" value="18"></p>
<button onclick="myFunction()">Test</button>
<p>Any values above: <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.findIndex(checkValue);
}
</script>