1.唯一变量:将变量都挂载到同一个命名空间下;
2.模块模式:
var serial_maker
= function (
) { var prefix
= ''; var seq
= 0; return { set_prefix: function (p)
{ prefix
= String(p); }, set_seq: function (s)
{ seq
= s; }, gensym: function (
) { var result
= prefix + seq; seq
+= 1; return result; } };}(
);
var seqer
= serial_maker( );seqer.set_prefix
= 'Q';seqer.set_seq
= 1000;var unique
= seqer.gensym( ); // unique is "Q1000"3.闭包
(function(){
var exp={};
var name="aa";
exp.method=function(){
return name;
};
window.ex=exp;
})();
(function(obj){
/* 在这里边就与外边隔离了,定义的局部变量不会与外界干扰 /
/ 为了跟外界达到共享的目的,还可以为其加入参数,例如obj,在最后调用的时候把相关的参数传进来,例如下边的window */
var A = {};//定义一个A包
var tmp;//临时变量
A.i = 1;//定义这个包里边的i变量
A.func = function(){alert('I am A');};
obj.A = A;/* 把A包挂到obj底下 */
})(window);
6490

被折叠的 条评论
为什么被折叠?



