我以前从未见过这种设计模式,它是做什么的?
(function(def){
if(typeof module!='undefined'){
module.exports=def;
}
else{
this.nut=def;
}
}( function(){
...
}() ));
最佳答案
正如 Ben Alman 所说,这是一个“立即调用的函数表达式”。定义的第一个函数采用一个参数 def
。将此函数括在括号中并向其传递第二个函数定义(也在括号中)会立即调用第一个函数,并将第二个函数的结果(也会立即调用)作为 def
参数传递给它。
更多信息:http://benalman.com/news/2010/11/immediately-invoked-function-expression/
关于javascript - 未知的 javascript 函数声明模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11872566/