我一直在写很多javascript函数和事件监听器,我想将它们移动到它们自己的命名空间,隔离的地方,当我连接并用我的其他javascript文件缩小它时不会发生冲突.
我还是javascript的新手,所以这个答案可能有简单的解决方案.我开始创建一个javascript对象:
var MySpecialStuff = {
init: function(){
//do everything here
}
};
Run Code Online (Sandbox Code Playgroud)
然后在我的html中,在我想要使用它的页面上,我可以初始化这段代码:
<script>
MySpecialStuff.init();
</script>
Run Code Online (Sandbox Code Playgroud)
但随后该init方法开始增长,我需要开始将代码分解为更小的块,但我仍然坚持语法以及如何设置私有方法/变量并从init方法和其他私有方法中调用它们.我怎样才能做到这一点?
我是朝着正确的方向前进的吗?我/我应该采取哪些其他方式来做这类事情?
rav*_*rav 23
你朝着正确的方向前进.您可以使用模块模式创建具有私有成员和方法的对象,如下所示:
var foo = function(){
var bar = ""; //private
function funk(){
//private function
return "stuff";
}
return{
getBar: function(){
return bar;
},
init: function(){
alert(funk());
},
randomMember: 0 //public member
}
}();
Run Code Online (Sandbox Code Playgroud)
只有返回块中的内容是公共的,但您可以调用任何私有方法/访问返回块中的任何私有方法.
| 归档时间: |
|
| 查看次数: |
7871 次 |
| 最近记录: |