numbers = [1,2,3,4,5,4,3,2,1];
var filterResult = numbers.filter(function(i){
return (i > 2);
});
Я не понимаю, как это работает. если я опускаю i как аргумент функции, он прерывает функцию, но i не привязан ни к чему, поэтому зачем это нужно?Параметры функции JavaScript для функции фильтра
Возможно, этот ресурс полезен для вас: https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/filter – Niko
Таким образом, i используется функцией фильтра как способ передать любое значение при индексе чисел есть? javascript идет и получает каждый элемент, я просто должен сказать ему, что делать с i? – Kevin
Простыми словами: если вы вызываете filter() в массиве, JavaScript принимает каждое значение этого массива и вызывает указанную вами функцию (в этом случае 'function (i) {return (i> 2);}' и вызывает эта функция передаёт текущее значение, которое обрабатывается как параметр для этой функции. Поскольку вы назвали первый параметр, который ваша функция принимает «i», теперь вы можете работать с переменной i внутри этой функции. «true», значение будет в новом массиве, который возвращает filter(), если он вернет «false», он будет пропущен. Таким образом, вы можете легко «фильтровать» массив. – Niko