三:闭包和高阶函数
3.1 闭包
闭包的作用域
闭包的生存周期
闭包的更多作用 1、封装变量
var mult = (function(){ var cache = {}; var calcuate = function(){ var a =1; for(var i=0 ,l=arguments.length;i<l;i++){ a = a*arguments[i]; } return a; } return function(){ var args = Array.prototype.join.call(arguments,','); if(args in cache){ return cache[args]; }else{ return cache[args] = calcuate.apply(null,arguments) } } })() console.log(mult(1,2,3,4));