【发布时间】:2014-05-26 16:53:04
【问题描述】:
我有这样的代码:
function Food(type) {
this.type = type;
this.timesEaten = 0;
}
Food.prototype.eat = function() { // Dependent function
this.timesEaten++;
}
Food.prototype.pasta = function() { // In-dependent function
return new Food("pasta")
}
所以,我希望能够在不定义新食物的情况下使用意大利面功能,如下所示:
var pasta = Food.pasta()
但是,这行不通,你必须这样做:
var pasta = new Food().pasta()
如果你像这样设置食物,“Food.pasta()”确实有效:
var Food = {
pasta: function() {
return {type: pasta};
}
}
但是 new Food 不起作用,这意味着我必须使用“return {type: Pasta}”。
我想知道,有没有什么方法可以创造一种既可以依赖又可以独立的食物?
【问题讨论】:
-
也许适合你,jsbin.com/taqulivo/1
标签: javascript function object