function makeIncreaseByFunction(increaseByAmount) {
return function (numberToIncrease) {
return numberToIncrease + increaseByAmount;
};
}
makeIncreaseByFunc
var increaseBy3 = makeIncreaseByFunction(3);
is the exact same as (disregarding the local storage for the variable increaseByAmount
):
var increaseBy3 = function (numberToIncrease) {
return numberToIncrease + 3;
};
So of course now you can call increaseBy3(10)
and get 13
. increaseBy3
just references as anonymous function which returns its first argument plus 3
.