例子:如何列出的CoffeeScript或JavaScript繼承類的方法
class Complex
constructor: (@a, @b) ->
conjugate: -> new Complex(@a, [email protected])
class ComplexSon extends Complex
constructor: (@a, @b) ->
@c = 3.14
magnitude: -> @a*@a + @b*@b
我已經定義了以下方法:
dumpMethods = (klass) ->
Object.getOwnPropertyNames(klass.property).sort()
測試用例:
dumpMethods(Complex) == ['conjugate', 'constructor']
# success
dumpMethods(ComplexSon) == ['conjugate', 'constructor', 'magnitude']
# fails, returns ['constructor', 'magnitude']
什麼dumpMethods的正確定義?
JavaScript沒有類。 Coffeescript在這方面本質上是有缺陷的。閱讀原型對象設計。 – Incognito