Я пытаюсь динамически создавать методы в сценарии coffee, но, как показывает мой код, итератор, который я использую для создания методов не сбрасывает свои переменные между итерациями, поэтому я использую общие переменные, которые конфликтуют:
class MyClass
constructor: (@name) ->
for k, v of ['get', 'set']
console.log('creating method: ' + v)
MyClass::[v] = (args...) ->
method = v
console.log('executing method: ' + method)
o = new MyClass('dummy')
o.get()
o.set()
Выходы:
> creating method: get
> creating method: set
> executing method: set
> executing method: set
кто-нибудь знает, что я делаю неправильно?