(函数(){ var根=此; 变量SOMEVAR; SOMEVAR=根。 SOMEVAR={}; SOMEVAR.windowOffset=0; SOMEVAR.defaultBase=195; SOMEVAR.resizeIFrame=函数(){ //一些代码 }; SOMEVAR.resetIFrameSize=函数(高度){ //一些代码 } 窗口。 SOMEVAR=索梅瓦尔; })(本);
-
这 表示您想要的任何内容或默认情况下的所有内容。 – 丹达维 评论 2015年4月16日5:12 -
好像是个IIFE en.m.wikipedia.org/wiki/即时invoked_function_expression 允许访问外部对象,而不是直接使用它,而是通过参数? – 12月 评论 2015年4月16日5:12 -
对于函数式JS程序员来说,这是一个未命名但仍通过的参数。 – 丹达维 评论 2015年4月16日5:18
4个答案
(函数(){})
(功能(上下文){ //根据上下文做某事 })(本);
-
完整的代码是:(function(){var root=this;var SOMEVAR;SOMEVAR=root.SOMEVAR={}; SOMEVAR.windowOffset=0; SOMEVAR.defaultBase=195; SOMEVAR.resizeIFrame=function(){//一些代码}; SOMEVAR.resetIFrameSize=函数(高度){//some codes}窗口。 SOMEVAR=SOMEVAR;}) (本); 让我困惑的是,这里的“这个”似乎没有用处。 它是? – 贾斯汀_J 评论 2015年5月7日16:28 -
@贾斯汀·J-不,它似乎没有用处。 正如我所说,这是一个奇怪的例子。 如果写下来的话,至少会有一些意义 (函数(根){var SOMEVAR;…})(this); .然后 根 会受到任何约束 这 在调用代码中引用。 – 特德·霍普 评论 2015年5月7日17:04
(函数(ns){})(this);
(函数(ns){ console.log(ns===窗口); })(本);
警报(foo);
(函数(ns){ 警报(ns.foo); })(本);