пожалуйста, объясните эту конструкцию coffeescript - PullRequest
1 голос
/ 25 января 2012

фрагмент из образца:


class Animal
  constructor: (@name) ->

В документации сказано, что @name является синтаксическим сахаром для this.name.Где сказано, что вышеуказанная функция также выполняет присваивание?как?Из сгенерированного кода я вижу, что он делает, я просто пытаюсь понять язык.почему он выполняет назначение?

спасибо Константин

1 Ответ

3 голосов
/ 25 января 2012

http://arcturo.github.com/library/coffeescript/03_classes.html

Фактически, CoffeeScript обеспечивает сокращение для общего шаблона установки свойств экземпляра.Приставляя аргументы к @, CoffeeScript автоматически устанавливает аргументы в качестве свойств экземпляра в конструкторе.

По сути, вызов аргумента @name означает «использовать этот аргумент для установки свойства name объектановый Animal экземпляр ".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...