1.(function(window,undefined){})(window); Q:(function(window,undefined){})(window);中为什么要将window和undefined作为参数传给它? A:因为 javascript 执行JS代码是从里到外,因此把全局变量传进来,就避免了到外层去寻找.提高效率 Q:不明白为什么JS 的undefined还可以做变量名. undefined算是JS里面的什么呢?不是关键字,不是保留字,true跟false还有null也不是…
在jquery插件中我们经常看到以下这段代码 1 2 3 ;(function ( $, window, document, undefined ){ //函数体内具体代码 })(jQuery, window,document); 对于很多初学者来说很难明白这表示什么,下边我将为大家介绍其相应的作用. 1.代码最前面的分号,可以防止多个文件压缩合并以为其他文件最后一行语句没加分号,而引起合并后的语法错误. 2.匿名函数(function(){})();:由于Javascript执行表达式是从圆括…
在jquery插件中我们经常看到以下这段代码 ;(function ( $, window, document, undefined ){ //函数体内具体代码 })(jQuery, window,document); 对于很多初学者来说很难明白这表示什么,下边我将为大家介绍其相应的作用. 1.代码最前面的分号,可以防止多个文件压缩合并以为其他文件最后一行语句没加分号,而引起合并后的语法错误. 2.匿名函数(function(){})();:由于Javascript执行表达式是从圆括号里面到外面…
在jquery插件中我们经常看到以下这段代码 对于很多初学者来说很难明白这表示什么,下边我将为大家介绍其相应的作用. 1.代码最前面的分号,可以防止多个文件压缩合并以为其他文件最后一行语句没加分号,而引起合并后的语法错误. 2.匿名函数(function(){})();:由于Javascript执行表达式是从圆括号里面到外面,所以可以用圆括号强制执行声明的函数.避免函数体内和外部的变量冲突. 3.$实参:$是jquery的简写,很多方法和类库也使用$,这里$接受jQuery对象,也是为了避免$变…
;(function($,window,document,undefined){})(jQuery,window,doucment) 1.自调函数(function(){})() 2.好处是不会产生任何全局变量,提高性能或者兼容性.缺点是无法重复执行,适合只执行一次性或初始化的任务. 3.“:”分号作用:防止多个文件压缩合并以为其他文件最后一行语句没加分号…
由于非常感兴趣, 我查询了很多关于IIFE (immediately-invoked function expression)的东西, 如下: (function (window, document, undefined) {// })(window, document); 那么为什么不写一篇关于它的文章呢? ;-) 首先,它有一系列不同的东西.从头开始: 作用域 JavaScript有function 作用域, 所以它被用在必须私有作用域的地方.举个例子: (function (window,…
原文地址:What (function (window, document, undefined) {})(window, document); really means 按原文翻译 在这篇文章中,我们将探讨标题所暗示的内容,并解释自调用函数设置给我们带来了什么. 有趣的是,我被问到关于IIFE(即时调用的函数表达式)的很多,它采用以下设置: (function (window, document, undefined) { // })(window, document); 那么为什么不写一篇关…
1.IIFE(即时调用的函数表达式),它采取以下表达式: (function (window, document, undefined) { // })(window, document); JavaScript具有函数作用域,因此可以创建一些需要的“私有范围”. “IIFE”之所以被创造出来是因为它们是直接调用的函数表达式. 这意味着它们在运行时被立即调用,我们也不能再调用它们了,它们只运行一次. (function (window) { })(window); (window); 是调用函数…
使用匿名自执行函数的作用: (function(window,document,undefined){})(window,document); 1.首先匿名函数 (function(){}) (); 避免函数体内外变量的冲突(js执行表达式顺序为圆括号里到圆括号外); 2.后面的圆括号中(window,document)的window为实参,接受window对象(window对象是全局环境下的):而function后面的圆括号function(window,document,undefined)…
jquery插件中使用ajax后无法在里面获取this 解决办法是在函数内使用ajax前声明变量 $this=this 然后再ajax中使用$this…