Показать сообщение отдельно
  #1 (permalink)  
Старый 26.04.2019, 19:40
Новичок на форуме
Отправить личное сообщение для SpZm1ro Посмотреть профиль Найти все сообщения от SpZm1ro
 
Регистрация: 26.04.2019
Сообщений: 3

Объясните пример замыкания функции из книги
В "Выразительном JavaScript" пример замыкания. [...] Функция,
умножающая числа на любое заданное число:

function multiplier(factor) {
  return function(number) {
    return number * factor;
  };
}
var twice = multiplier(2);
console.log(twice(5));
// → 10


Поясните, пожалуйста, как она работает? Каким образом передать параметр "number" в эту внутреннюю функцию? Я вижу, вызовом "twice(5)" эта пятерка каким-то образом идет как нужный параметр. Но почему так? Ведь у функции multiplier лишь один параметр и это number.
Читаю книгу с начала, до этого все понятно было. Здесь ну никак не въеду.
Ответить с цитированием