js防止全局变量冲突

1.用匿名方法将脚本包起来,让变量的作用域控制在匿名函数之内。 (function(){})()

2.工程师甲和乙都有各自的匿名函数。但是两个脚本如何通信?可以在window作用域下定义一个全局变量,把它当作一个桥梁,完成匿名函数之间的通信。

var GLOBAL={};
(function(){ var a=123,b="hello world"; GLOBAL.str1 = a; GLOBAL.str2 = b; })(); //程序员在自己的匿名函数中获取全局变量 (function(){ var c = GLOBAL.str1; })();

3.不同的工程师有各自的全局变量,有可能甲的全局变量会被乙的覆盖,可以引入命名空间。

<script type="text/javascript">
  var GLOBAL = {};
</script>
<script type="text/javascript">
  var a=123,b="hello world";
  GLOBAL.A={};
  GLOBAL.A.str1 = a;
  GLOBAL.A.str2 = b;
</script>
<script type="text/javascript">   var a=456,b="你好,世界";   GLOBAL.B={};   GLOBAL.B.str1 = a;   GLOBAL.B.str2 = b; </script>

 

posted @ 2014-10-16 17:45  小刘_php  阅读(254)  评论(0)    收藏  举报