在JavaScript中全局变量经常会引起命名冲突,甚至有时侯重写变量不是按照想像中的顺序来。避免全局变量名冲突的最好办法还是创建命名空间,接下来千锋重庆小编就给大家分享在JavaScript中创建命名空间的几种常用方法。
JavaScript的执行环境由各种各样的全局变量构成,这些全局变量先于函数执行环境而创建、这些全局变量都挂载于“全局对象”下。当名称有冲突时就会产生一些不可控的问题,比如命名冲突、代码的脆弱性、难以测试等。
在编程开发中合理的使用命名空间可以避免相同的变量或对象名称产生的冲突,而且命名空间也有助于组织代码有更强的可维护性和可读性。JavaScript中虽然没有提供原生的命名空间支持,但我们可以使用其他的方法(对象和闭包)实现类似的效果。
1、单一全局变量
JavaScript中一个流行的命名空间模式是选择一个全局变量作为主要的引用对象,因为每个可能的全局变量都成为唯一全局变量的属性,也就不用再创建多个全局变量,也就避免了和其他声明的冲突。不过单一全局变量模式已经在不少的JavaScript类库中使用,如:YUI定义了唯一的YUI全局对象,jQuery定义了 和 j Q u e r