今天做JsHint时,碰到一个警告:应该使用(function(){}())而不是(function(){})();看到这个我心想,这两种函数自执行有什么区别吗?自执行用了这么久,感觉对其理解仍然有点迷糊.于是,开始了一波百度.百度了一波后,再加上自己的一点理解对其终于有了一点眉目. 如果我们想要写一个自执行函数,第一反应会这样写:  ;function(){/*函数内容*/}() //然而,这样是会报错的.原因是当写一个匿名函数体之后,浏览器会将其当成是函数的声明,而不是函数表达式 对此,网上…
测试一: var fud01 = function()  { var temp = 100; this.temp = 200; return temp + this.temp; } alert(typeof(fud01)); alert(fud01()); 运行结果: function 300 最普通的function使用方式,定一个JavaScript函数.在大扩号内的变量作用域中,this指代fud01的所有者. 测试二: var fud02 = new function() { var t…
(function(){         ......   }())  或   (function(){            ......   })()  匿名函数自调用,也就是说,定义一个匿名函数,然后马上调用它. 因为这个匿名函数的函数体相当于提供一个匿名的名字空间,这样就不会与用户自定义的JS函数.变量.对象发生冲突了,不失为是一种很好的解决命名空间问题的方法. 例如json2.js (function () { function f(n) { // Format integers to…
本篇文章主要是对jQuery(function(){})与(function(){})(jQuery)之间的区别进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 Jquery是优秀的Javascrīpt框架.我们现在来讨论下在 Jquery 中两个页面载入后执行的函数. $(document).ready(function(){  // 在这里写你的代码...});在DOM加载完成时运行的代码 可以简写成 jQuery(function(){ }); (function($) {})(j…
1.(function($) {…})(jQuery); 1).原理: 这实际上是匿名函数,如下: function(arg){…} 这就定义了一个匿名函数,参数为arg 而调用函数时,是在函数后面写上括号和实参的,由于操作符的优先级,函数本身也需要用括号,即: (function(arg){…})(param) 这就相当于定义了一个参数为arg的匿名函数,并且将param作为参数来调用这个匿名函数 而(function($){…})(jQuery)则是一样的,之所以只在形参使用$,是为了不与其…
请问下(function($){}) 和$(function(){}) 和$(function($){}) 有什么区别 谢谢 一.先看 jQuery(function(){ }); 全写为 jQuery(document).ready(function(){ }); 意义为在DOM加载完毕后执行了ready()方法. 二.再看 (function(){ })(jQuery): 其实际上是执行()(para)匿名方法,只不过是传递了jQuery对象. 三.总结 jQuery(function(){…
前面一段时间,看到(function(){}),(function(){}())这些函数就犯晕,不知道它到底是什么意思,为什么函数外要加小括号,函数后要加小括号,加和不加到底有什么区别……一直犯迷糊,看了汤姆大叔的<深入理解JavaScript系列(4):立即调用的函数表达式>后才明白它们到底是什么东西,终于将困扰我已久的东西给干掉了. 在这里,我先介绍一下函数引用和函数调用的差别.函数声明表现形式和函数表达式的表现形式. 一.函数引用和函数调用的差别 函数引用和调用的差别与函数名称后是否有小…
$(document).ready(function(){...}) , $().ready(function(){...}) ,  $(function(){...}) , jquery(function($){}四者作用相同,都是文档载入完成后执行的函数. (function($){...})(jquery)是一个匿名函数,例如: (function(a){...})(jquery)中a是这个匿名函数的参数,之所以只在形参使用$,是为了不与其他库冲突,所以实参是jquery; 作用是:在这个…
1. $(function(){ }) 或 jQuery(function(){ }) 此函数也可以写成 jQuery(function(){ }), 用于存放操作DOM对象的代码,执行其中代码时DOM对象已存在.不可用于存放开发插件的代码,因为jQuery对象没有得到传递,外部通过jQuery.method也调用不了其中的方法(函数). 2. (function(){})() 或  function(){ })(jQuery) 此函数也可以写成   function(){ })(jQuery)…
js立即执行函数: (function ( ){})( ) 与 (function ( ){}( )) 有什么区别? 转自:http://www.jb51.net/article/75089.htm 这篇文章主要介绍了js立即执行函数: (function ( ){})( ) 与 (function ( ){}( )) 有什么区别,需要的朋友可以参考下   没有区别. 你需要明白 IIFE 的原理,我简单说一下: 复制代码 代码如下: function foo() {...}     // 这是…