мне нужна помощь разрушения построчно, что происходит в этом примере (отрывок из красноречивых Javascript):функции порядка объяснение High при передаче функции другой функции
Мы имеем функцию Foreach которая регистрирует каждый элемент в массив. Я понимаю, как это работает.
function forEach(array, action) {
for (var i = 0; i < array.length; i++)
action(array[i]);
}
Таким образом, мы имеем массив с именем «числа» и другую переменную с именем «сумма» устанавливается в 0. Где я заблудиться, когда «функция (номер)» получает передается в параметр действия. Что это делает и как это работает? Я не понимаю, какая это ценность. Может кто-то сломать это?
var numbers = [1, 2, 3, 4, 5], sum = 0;
forEach(numbers, function(number) {
sum += number;
});
console.log(sum);
// → 15
«Я понимаю, как это работает» - похоже, вы не знаете. –
Это [* выражение функции *] (http://stackoverflow.com/q/1013385/1048572), создавая [* замыкание *] (http://stackoverflow.com/q/111102/1048572) над 'sum '. – Bergi
Спасибо! Разум объясняет? –