gpt4 book ai didi

javascript - $(document).ready(function(){ ... }); 内的自调用函数

转载 作者:行者123 更新时间:2023-12-01 02:32:21 25 4
gpt4 key购买 nike

我已经将我的javascript封装在

jQuery(document).ready(function($) {

});

我想知道通过这两种方式调用其中的函数会产生什么影响:

jQuery(document).ready(function($) {
$(function () {
// do something
});
});

对比

jQuery(document).ready(function($) {
(function () {
// do something
})();
});

编辑:

我还想知道这两者中哪一个是更“正确”的做事方式?请随意添加您自己的实现。

最佳答案

不同之处在于执行顺序:

jQuery(document).ready(function($) {
$(function () {
// inner handler
});
// outer handler
});

内部 ready 处理程序中的代码在外部处理程序中的代码之后执行:http://jsfiddle.net/nmD8b/ .

jQuery(document).ready(function($) {
(function () {
// do something
})();
// outer handler
});

立即函数表达式内的代码在定义函数的位置执行,即在表达式后面的代码之前执行:http://jsfiddle.net/nmD8b/ .

<小时/>

如果您想确定变量的作用域,请使用第二种方法。第一种方法没有多大意义,您应该仅在实际需要时注册ready事件处理程序。在这种情况下,DOM 已经准备好,因为您将处理程序绑定(bind)到另一个准备好的处理程序中。

如果您不想限定变量的作用域,请不要使用它们。只需将所有代码放入外部处理程序中即可。

关于javascript - $(document).ready(function(){ ... }); 内的自调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13183260/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com