f(b) {
currentSum += b;
return f;
}
f.toString = function() {
return currentSum;
};
return f;
}
alert(sum(5)(3)) ->> 8
console.log(sum(5)(3)) ->> [Function: f] { toString: [Function (anonymous)] }
😁 why??
Объяснить это можно, например, тем, что alert внутри себя вызывает toString() А console.log этого не делает
alert вызывает toString, который возвращает число в строке, потому что ты его переопределили так. console.log этого не делает, поэтому ты получаешь значение, которое описал в return в function f, т.е. функцию.
Могут объяснить в @js_noobs_ru
Обсуждают сегодня