javascript 惰性载入函数

先上代码

   var key = 0; 
function createVar(){ console.log('hello'); if(key == 1){ createVar = function(){ return 111; } }else if( key ==2 ){ createVar = function(){ return 222; } }else{ createVar = function(){ return 333; } } return createVar(); } console.log(createVar()); console.log(createVar()); console.log(createVar()); console.log(createVar());

//输出结果
hello
333
333
333
333

从打印的结果可以看出只输出了一次hello,这样做的好处是,不用每次都进行没必要的代码段,如里面的if判断,

适合那些对环境变量等不变因素进行判断的函数,例如根据浏览器类型生成XMLHttpRequest等,在同一个页面就无需判断多次

posted @ 2012-05-28 17:05  Sheldon.Dai  阅读(176)  评论(0编辑  收藏  举报