我有一组 Javascript 文件,它们共同构成一个系统。系统的不同部分位于不同的(全局)名称空间(例如,NSA、NSB 等)中,这些名称空间可能是对象,例如
NSA = {
... lots of stuff ...
}
现在,在我的各种模块中,我可能有如下代码:
NSA.method();
我的代码 JSLints 很干净,因为我在文件顶部的注释中声明了这些命名空间对象:
/*global dNSA NSB NSC */
当我使用 -v (详细)开关在这些文件上运行 YUI Compressor (v 2.4.2) 时,它会发出有关引用的命名空间对象的警告,例如:
Found an undeclared symbol: $
那是为了将 $ 用于 jQuery!
我可以做些什么来定义这些变量,以便 YUI Compressor 不会发出警告,但我添加的任何内容都不会导致对象发生变化。