Поиск массива JavaScript()
Пример 1
Найдите значение первого элемента со значением больше 18:
const ages = [3, 10, 18, 20];
function checkAge(age) {
return age > 18;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.find(checkAge);
}
Определение и использование
Метод find()
возвращает значение первого элемента, прошедшего проверку.
Метод find()
выполняет функцию для каждого элемента массива.
Метод find()
перенастраивается undefined
, если элементы не найдены.
Метод find()
не выполняет функцию для пустых элементов.
Метод find()
не изменяет исходный массив.
Синтаксис
array.find(function(currentValue, index, arr),thisValue)
Параметры
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. |
Возвращаемое значение
Тип | Описание |
Ценность |
Значение первого элемента, прошедшего проверку. В противном случае возвращается undefined . |
Поддержка браузера
find()
является функцией ECMAScript6 (ES6).
ES6 (JavaScript 2015) поддерживается во всех современных браузерах:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
find()
не поддерживается в Internet Explorer 11 (или более ранних версиях).
Пример 2
Найдите значение первого элемента со значением выше определенного числа:
<p><input type="number" id="ageToCheck" value="18"></p>
<button onclick="myFunction()">Try it</button>
<p id="demo"></p>
<script>
const ages = [4, 12, 16, 20];
function checkAge(age) {
return age > document.getElementById("ageToCheck").value;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.find(checkAge);
}
</script>