-1

我懂了

第一的

$(function() {

  ...

});

第二

(function() {
})();

第三

function() {
}

$(document).ready(function(){
});

也许还有更多,有什么区别?

4

2 回答 2

3

您的符号主要是 jQuery(至少带有 jQ​​uery 的符号$

  1. 这是 DOM 就绪函数的简写,相当于底部的函数

  2. 这是一个自执行函数,其参数在尾随中指定()

  3. 这至少是一个 DOM 就绪函数$(document).ready(function() {});,它上面的函数只是一个函数。

于 2013-10-24T00:32:45.460 回答
1

所以这些确实是执行 javascript 代码的几种不同方法,其中一些是依赖于库的(使用 jQuery),另一些是由于范围的差异而专门完成的。

第一个块:

$(function() {
  ...
});

正在利用使用命名空间'$'的js库jQuery你在这里做的是调用jQuery'$'函数传递另一个匿名函数的第一个参数......这是调用的简写方式$(document).ready(function(){});......两者这些语句等待 DOM 完成加载(通过 onload 事件),然后再解释内部的 javascript

第二块:

(function() {
})();

是一个称为(IIFE)立即调用函数表达式的过程......它本质上是定义一个匿名函数并立即调用它。

第三块:

function() {
}

$(document).ready(function(){
});

代表两件事......实际声明的第一个函数应该被命名为类似的名称function myFunction(){...},因此可以稍后调用myFunction(parameters);

最后$(document).ready(function(){}); 是javascript库jQuery的说法,抓住dom的'document'元素,并附加一个事件监听它以寻找onload事件,当触发该事件时执行作为参数传递的函数......

于 2013-10-24T00:34:28.990 回答