en.wikipedia.org/wiki/Comma_operator

вая следующий код coffeescript:

class Animal
  constructor: (@name) ->
  speak: (things) -> "My name is #{@name} and I like #{things}"

Это генерируется:

var Animal = (function() {
  function Animal(name) {
    this.name = name;
  }
  Animal.prototype.speak = function(things) {
    return "My name is " + this.name + " and I like " + things;
  };
  return Animal;
})();

Но почему не генерируется этот более идиоматический код?

var Animal = function Animal(name) {
  this.name = name;
};
Animal.prototype.speak = function(things) {
  return "My name is " + this.name + " and I like " + things;
};

Я знаю, что coffeescript оборачивает множество вещей в анонимных функциях, чтобы контролировать утечку области, но что здесь может быть утечка?

Ответы на вопрос(3)

Ваш ответ на вопрос