首页 > 代码库 > 《javascript设计模式与开放实践》学习(四)私有变量
《javascript设计模式与开放实践》学习(四)私有变量
为了避免全局变量被污染,可采用加命名空间和闭包封装方式进行私有化。
一、使用命名空间
将某个变量变成某个命名空间下私有变量
var MyApp={}; MyApp.namespace=function (name) { var parts=name.split(‘.‘); var current=MyApp; for(var i in parts){ if(!current[parts[i]]){ current[parts[i]]={}; } current=current[parts[i]]; } }; MyApp.namespace(‘event‘); MyApp.namespace(‘dom.style‘); console.dir(MyApp);
上述等价于
var Myapp={ event:{}, dom:{ style:{} }};
这样就定义了MyApp命名空间下的两个属性event和dom.
二、使用闭包
var user=(function () { var _name=‘ls‘, _age=27; return{ getUserInfo:function () { return _name+‘_‘+_age; } } })(); console.log(user.getUserInfo()) ;
将name和age属性封装起来,外部无法访问。
《javascript设计模式与开放实践》学习(四)私有变量
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。