CoffeeScript,=>之间有什么区别?和 - >

时间:2013-09-30 16:28:48

标签: javascript coffeescript

我是CoffeeScript的新手。我今天碰到了这个。

example -> 
 a ->

example ->
 b =>

瘦箭与胖箭的区别是什么?

有人可以解释这些差异以及何时应该使用它们。

1 个答案:

答案 0 :(得分:9)

胖箭头=>定义了一个绑定到this当前值的函数。

这对于回调尤其方便。

注意生成的差异

咖啡脚本:

foo = () -> this.x + this.x;
bar = () => this.x + this.x;

的JavaScript

var bar, foo,
  _this = this;

foo = function() {
  return this.x + this.x;
};

bar = function() {
  return _this.x + _this.x;
};