Понимание кода JavaScript - передача значения объекту, который уже определен функцией со значением - PullRequest
0 голосов
/ 12 февраля 2019

Я не понимаю, почему это console.log(twice(5)) печатает 10. Как дважды принимать значение 5, когда оно уже определено функцией, у которой есть значение?

function multipler(factor){
    return number => number * factor;
}
let twice = multipler(2);

console.log(twice(5));

, но если я попытаюсьчтобы напечатать console.log(multipler(2)), он просто печатает [Function]

1 Ответ

0 голосов
/ 12 февраля 2019

Функция multipler (обратите внимание, что вы, вероятно, имели в виду multiplier) возвращает функцию.Итак, вызов multipler(2) возвращает вам следующее:

number => number * 2

, что эквивалентно этой функции:

function (number) {
    return number * 2;
}

Это то, что вы сохранили в twice.Итак, twice(5) возвращает 10.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...