function in javascript... help me connect the dots -


i saw example in eloquent javascript , wondering how function works. please explain me?

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

i able follow parameter factor = 2.
im confused twice(5) , how becomes parameter number.

this example of 'closure' in javascript.

saying:

var twice = multiplier(2) 

is same saying:

var twice = function(number){   return number * 2;  }; 

so twice becomes reference function give twice value send it.

the multiplier function returns function(number){...}, has 'closure' on factor (in case 2).

that's why when call twice(5), result of 10.

you'll want read on closures: https://developer.mozilla.org/en-us/docs/web/javascript/closures


Comments

Popular posts from this blog

sql server - Cannot query correctly (MSSQL - PHP - JSON) -

php - trouble displaying mysqli database results in correct order -

C++ Linked List -