【发布时间】:2015-10-29 23:05:40
【问题描述】:
我有一个简单的构造函数
function foo() {
this.bar = function() {
return "fubar";
}
}
当我打电话给new foo().bar();时,这里没问题
如果我想做这样的事情
function foo() {
this.bar = function() {
function subbar() {
return "subbar";
};
}
}
我已经尝试了以下版本,但它们都不起作用。
function foo() {
this.bar = function() {
this.bar.subbar() {
return "subbar";
};
}
}
function foo() {
this.bar = function() {
this.bar.prototype.subbar() {
return "subbar";
};
}
}
我怎样才能到达像new foo().bar().subbar()这样的子栏
【问题讨论】:
-
您期望发生什么?最后两个是无效的语法。
-
我希望在许多本机函数中达到像 nerw foo().bar().subbar() 这样的子栏
-
两个答案都是正确的你必须在返回中暴露它,我建议你看看JS中的模块模式:adequatelygood.com/JavaScript-Module-Pattern-In-Depth.html
-
如果没有关于您想要实现的预期行为的更多信息,将很难回答...
-
我真的不明白为什么这个问题被低估了
标签: javascript class object inheritance constructor