Как определить глобальные переменные в CoffeeScript?

На Coffeescript.org:

bawbag = (x, y) ->
    z = (x * y)

bawbag(5, 10) 

будет компилироваться в:

var bawbag;
bawbag = function(x, y) {
  var z;
  return (z = (x * y));
};
bawbag(5, 10);

компиляция с помощью coffee-скрипта в node.js обертывает это так:

(function() {
  var bawbag;
  bawbag = function(x, y) {
    var z;
    return (z = (x * y));
  };
  bawbag(5, 10);
}).call(this);

Документы говорят:

Если вы хотите для создания переменных верхнего уровня для использования другими скриптами, прикрепите их как свойства к окну или к объекту экспорта в CommonJS. Экзистенциальный оператор (описанный ниже) дает вам надежный способ выяснить, куда их добавить, если вы ориентируетесь на оба CommonJS и браузер: root = exports? this

Как определить глобальные переменные в CoffeeScript. Что означает «прикрепить их как свойства к окну»?

317
задан sam 25 January 2016 в 10:28
поделиться