2013-09-30 4 views
3

Я новичок в CoffeeScript. Сегодня я столкнулся с этим.CoffeeScript, в чем разница между => и ->

example -> 
a -> 

и

example -> 
b => 

Что это различное между тонкой стрелкой против жирной стрелки?

Не могли бы вы объяснить причину разницы и когда они должны использоваться.

+0

Этот вопрос, как представляется, не по теме, потому что она не о чтении документации. – rlemon

+0

@ rlemon Я не чувствую, что это не в тему, я читал документацию и не понимал. – Tyler

+0

@Tyler ==> прямо здесь: http://coffeescript.org/#fat-arrow – Neal

ответ

7

Жирная стрелка => определяет функцию, связанную с текущим значением 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; 
}; 
+2

В чем разница между этим и этим? – Tyler

+0

@Tyler '_this' - это просто имя переменной. 'this' является ключевым словом для языка (в JS, думаю о @ в CS) –

+0

ok Я знаю, что это значит, что я просто неясно на _this – Tyler

Смежные вопросы