*防止JS全局污染
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了*防止JS全局污染相关的知识,希望对你有一定的参考价值。
javascript 可以随意定义保存所有应用资源的全局变量。但全局变量可以削弱程序灵活性,增大了模块之间的耦合性。
在多人协作时,如果定义过多的全局变量 有可能造成全局变量冲突,也就是全局变量污染问题,以下是两种解决办法
一.定义全局变量命名空间
只创建一个全局变量,并定义该变量为当前应用容器,把其他全局变量追加在该命名空间下
var person1={ name:‘jacksplwxy‘, language:‘中文‘, intro:function(){ console.log(‘我的名字是:‘+this.name); }, speak:function(){ console.log(‘我能说:‘+this.language); }, init:function(){ this.intro(); this.speak(); } }; person1.init();
更多实例可查看这里
二 . 利用匿名函数将脚本包裹起来
var person2=(function(){ var name=‘jacksplwxy‘; var language=‘中文‘; var intro=function(){ console.log(‘我的名字是:‘+name); } var speak=function(){ console.log(‘我能说:‘+language); } return function(){ intro(); speak(); } })(); person2();
或者
var person3=(function(){ var name=‘jacksplwxy‘; var language=‘中文‘; var intro=function(){ console.log(‘我的名字是:‘+name); } var speak=function(){ console.log(‘我能说:‘+language); } return { init:function(){ intro(); speak(); } } })(); person3.init();
以上是关于*防止JS全局污染的主要内容,如果未能解决你的问题,请参考以下文章