jS OOP 嵌套函数
好吧,这可能是一个无趣的问题,因为我对 OOP 很陌生。
我正在尝试构建一些 JS 对象库,并且想知道是否可以使用嵌套函数来完成它?
var object = new function() {
this.action1 = function () {
this.dostuff1 = function () {
return "dostuff1";
};
this.dostuff2 = function () {
return "dostuff2";
};
};
我在访问第三级功能时遇到问题。我可以这样窝吗?
this.action2 = function () {
return "action2";
};
alert(object.action1.dostuff2());
Ok this may be a noobolicious question as im new to OOP.
Im attempting to build something of a JS Object Library and was wondering if I could do it using nested functions??
var object = new function() {
this.action1 = function () {
this.dostuff1 = function () {
return "dostuff1";
};
this.dostuff2 = function () {
return "dostuff2";
};
};
I am having trouble accessing the third level functions. Can I nest like this?
this.action2 = function () {
return "action2";
};
alert(object.action1.dostuff2());
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
虽然 Eberlin 的答案是完全正确的,但我建议您创建一个嵌套对象,该对象又会再次公开函数而不是嵌套函数本身。否则这可能会成为可维护性的噩梦。
基本上你可以创建
以下是一个实例: http://jsbin.com/ihotup/edit#javascript,直播
While Eberlin's answer is perfectly correct I'd suggest you to create a nested object which in turn again exposes functions rather than nesting functions itself. Otherwise this might become a maintainability nightmare.
Basically you could create
Here's a live example: http://jsbin.com/ijotup/edit#javascript,live
请参阅下面的一些代码清理:
希望这会有所帮助。另外,这里有一个有关 javascript 原型的简要教程。
See below for some code cleanup:
Hope this helps. Also, here's a brief tutorial on the javascript prototype.