$(document).ready(function(){ });
和 (function () {})();
有一些区别。
-
$(document).ready(function(){ });
是jQuery提供的方法,用于在DOM加载完成后执行回调函数。它确保在操作DOM元素之前,先等待整个文档加载完毕。这通常用于确保在操作或访问DOM元素之前,这些元素已经完全加载和准备好。这种方式可以防止在DOM未完全加载时执行操作而导致错误。
示例:$(document).ready(function() { // 在这里执行DOM操作 });
-
(function () {})();
是立即执行函数表达式(IIFE)的一种形式。它是一个自执行的匿名函数,会在定义后立即执行。这种方式常用于创建一个独立的作用域,避免变量污染全局命名空间。同时,它还可以用于封装代码和模块化开发。
示例:(function() { // 在这里执行代码 })();
所以,区别主要在于功能和用途上。$(document).ready(function(){ });
用于在DOM加载完成后执行回调函数,而 (function () {})();
是立即执行函数表达式,用于创建一个独立的作用域和封装代码。
需要注意的是,现代的jQuery版本已经推荐使用简化的形式 $(function() { });
来替代 $(document).ready(function(){ });
,它们的功能是相同的。