首页 > 代码库 > 闭包实现封装
闭包实现封装
1 闭包实现封装
var oj= (function(){ var _age= 0; var func1= function(){ return _age+1; }; var func2= function(){ return _age+2; }; return { m1 : func1, m2 : func2 }; })();
2 为上面的方法添加新方法
var obj =(function (f){ f.func3= function () { return ‘方法模式‘; }; return f;//方便方法连续调用 })(oj);//新模块obj继承oj的方法,并增加一个 alert(obj.m1()); alert(obj.m2()); alert(obj.func3());
3 上边的可能在oj没有加载,就执行obj模块,所以可以这样
var obj =(function (f){ f.func3= function () { return ‘方法模式‘; }; return f;//方便方法连续调用 })(window.oj|| {});
4 输入全局变量:独立性是模块的重要特点,模块内部最好不与程序的其他部分直接交互。为了在模块内部调用全局变量,必须显式地将其他变量输入模块。
这是jQuery框架的源码,将window对象作为参数传入,这样做除了保证模块的独立性,还使得模块之间的依赖关系变得明显。
(function(window, undefined ) { …… })(window );
闭包实现封装
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。