Coffeescript var的最佳方式

时间:2014-04-26 02:33:48

标签: coffeescript

我正试着想办法var找到一个好方法,而这里有一个..这是故意在cs,因为它没有记录?< / p>

me=;

fetchUser()

  .then((_me) =>
    me = _me
    fetchFriend()
  )
  .then((_you) =>
    me.friend(_you)
  )
  .then(done)
  .otherwise(=>
    console.log ':('
  )

正确编译到

var me;

me = fetchUser().then((function(_this) {
  return function(_me) {
    me = _me;
    return fetchFriend();
  };
})(this)).then((function(_this) {
  return function(_you) {
    return me.friend(_you);
  };
})(this)).then(done).otherwise((function(_this) {
  return function() {
    return console.log(':(');
  };
})(this));

编辑:它没有正确编译。

我也不会期待me = fetchUser(),但我之前没有看到过 https://github.com/jashkenas/coffee-script/issues/3098

1 个答案:

答案 0 :(得分:1)

我认为这只是解析器的一个怪癖。为了建立范围而声明的正常方式变量只是通过使用某个默认值(例如null)定义它们。