【发布时间】:2015-12-03 05:40:00
【问题描述】:
如果我的问题措辞不正确或难以理解我在问什么,这里有一个简化的示例来说明我正在尝试做的事情。
class Number
constructor: (@num) ->
@add: (operand1, operand2) ->
return operand1 + operand2
add: (operand) =>
@num = @add(@num, operand)
Number num1
Number num2
Number.add(num1, num2)
num1.add(num2)
这样做的目的是,Number.add(num1, num2) 可以用于静态返回 Number 类的两个对象的总和,并且 Number 类的对象可以使用 num1.add(num2) 向其添加另一个数字对象静态函数的代码。当我试图在我的项目中实现类似的代码时,结果是递归的混乱。我意识到在 add 函数中调用 @add 是在调用自身,这不是这里想要的。我正在尝试做的事情是可能的,还是我在这里尝试一些愚蠢的事情?
【问题讨论】:
标签: javascript class static coffeescript