JavaScript filter()
Пример
Вернуть массив всех значений в массиве ages
, которым исполнилось 18 лет или более:
var ages = [32, 33, 16, 40];
function checkAdult(age) {
return age >= 18;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.filter(checkAdult);
}
Попробуйте сами »
Больше примеров "Попробуйте сами" ниже.
Определение и использование
Метод filter() создает массив, заполненный всеми элементами массива, которые проходят тест (предоставляется в виде функции).
Примечание: filter() не выполняет функцию для элементов массива без значений.
Примечание: filter () не изменяет исходный массив.
Поддержка браузера
Цыфры в таблице указывают первую версию браузера, которая полностью поддерживает этот метод.
Метод | |||||
---|---|---|---|---|---|
filter() | Да | 9.0 | 1.5 | Да | Да |
Синтаксис
array.filter(function(currentValue, index, arr), thisValue)
Значения параметров
Параметр | Описание | ||||||||
---|---|---|---|---|---|---|---|---|---|
function(currentValue, index,arr) | Требуемый. Функция, выполняемая для каждого элемента массива. Аргументы функции:
|
||||||||
thisValue | Необязательный. Значение, которое должно быть передано функции, которая будет использоваться в качестве ее "этого" значения. Если этот параметр пуст, то значение "не определено" и будет принят в качестве "этого" значения |
Технические детали
Возвращаемое значение: | Массив, содержащий все элементы массива, прошедшие тест. Если ни один элемент не проходит тест, он возвращает пустой массив. |
---|---|
Версия JavaScript: | ECMAScript 5 |
Еще примеры
Пример
Вернуть массив всех значений в массиве ages, которые являются определенным числом или более:
<p>Минимальный возраст: <input type="number" id="ageToCheck" value="18"></p>
<button onclick="myFunction()">Попробовать</button>
<p>Все возрасты выше минимума: <span id="demo"></span></p>
<script>
var ages = [32, 33, 12, 40];
function checkAdult(age) {
return age >= document.getElementById("ageToCheck").value;
}
function myFunction() {
document.getElementById("demo").innerHTML = ages.filter(checkAdult);
}
</script>
Попробуйте сами »
Связанные страницы
JavaScript учебник: JavaScript Массивы
JavaScript учебник: JavaScript Итерация массива