我正在查看qunit的代码.
我的问题是你为什么要通过属性将qunit对象附加到window对象.
这是文件的链接.看第11行.
如果我使用firebug查看单元测试运行,您可以看到它是窗口的属性.
[编辑]补充:是否有特定的参考资料,用于在特定命名空间中声明事物的最佳实践?
所有全局对象(函数,变量等)都只是窗口的子对象,它是默认的上下文.
例如:window.jQuery
或window.$
以这种方式思考它可能更容易......你还会把它们放在哪里?当你做一些通用的,最好的(或至少最简单的)将它们粘在默认位置时.如果你正在做一些复杂的事情,包括许多函数,对象等......最好将它们放在命名空间或对象中.例如,所有jQuery的代码都在jQuery
,而不是在DOM的根目录中window.ajax
,而不是它jQuery.ajax
.
这是更整洁,但是当你处理一些项目时可能有点过分,但是如果是这样的话,确保它们是唯一的是一个好主意...这就是qunit所做的,通过为它们的对象添加前缀 qunit-