Witam, czytam powoli ksiazka "Eloquent JavaScript" - jest dostepna za darmo, z przykladami na stronie. Mam problem ze zrozumieniem jednego przykladu, moze ktos da rade mi to wyjasnic tutaj? Uruchomilem Firebug'a i obserwowalem jakie wartosci przyjmuja kolejne parametry i zmienne. Nie rozumiem skad i jak przekazywana jest wartosc do anonimowej funkcji
"function (element)". Nie jest nigdzie przekazywana zadna wartosc z tego co widze. Reszta ma sens, w funkcji "reduce" "combine" to "add", "base" ustawiony na zero, "array" przekazana do "sum" jest dostepna w funkcji wewnetrznej.
function forEach(array, action) {
for (var i = 0; i < array.length; i++)
action(array[i]);
}
function reduce(combine, base, array) {
forEach(array, function (element) {
base = combine(base, element);
});
return base;
}
function add(a, b) {
return a + b;
}
function sum(numbers) {
return reduce(add, 0, numbers);
}
var tempArray = new Array(1, 2, 3);
sum(tempArray);
dodanie znacznika <code class="javascript"> - fp