任何人都可以向我解释,如果使用命名空间是一个很好的编码实践。为什么需要呢?如果这是一个很好的方法,为什么JQuery默认不包含它。有一个单独的插件可以实现此功能。
我看到这个post提到了很少的方法。有人提到有关内存泄漏的帖子令人担忧。
最后,组织JQuery库的最佳方法是什么?
感谢,
答案 0 :(得分:20)
备注:强>
回应Amir的评论:
YUI通过向YUI对象添加变量来实现命名空间,其中添加的变量也是对象。他们的命名空间功能只是为你构建它。
var lib = {
util:{},
widget:{},
tool:{}
};
//creates a function named reset in the lib.util namespace
lib.util.reset = function() {};
//creates a function named reset in the lib.widget namespace
lib.widget.reset = function() {};
在jQuery中,如果对jQuery()命名空间使用jQuery.fn
,则将其添加到$.fn
(或$
。
答案 1 :(得分:3)
Re:组织jQuery库的最佳方法,您应该首先阅读jquery.com上的插件编写文章:
答案 2 :(得分:0)
require.js是一种更好的做法,因为它不需要您不必要地将对象添加到窗口对象上。这也并不意味着你必须担心以前的javascript文件的加载顺序。