2016-04-11 7 views
11

私はES6太字の矢印の表記法を使い始めました。本当に好きです。しかし、私はそれについて少し混乱しています。私が知る限り、このファット・アット・ファンクション内のキーワードは、ファンクションが現在実行されているコンテキストを参照しています。私はいくつかのシンプルなjQueryの反復をしたいと思った:

$('ul#mylist > li').each(() => { 
    $(this).addClass('some-class-name'); 
}); 

明らかにこのコードは動作しません。この特定のコードで、太い矢印の機能の中で、現在の「LI」要素をどのように参照しますか?

ありがとうございます。

答えて

20

必要ザ各()メソッドの供給がない所定の場合にコールバックに2番目の引数として現在の要素を提供しますコールバック関数の2つのパラメータ現在のインデックスと現在のアイテムです。したがって、次の操作を行うことができます:

「V」変数は、現在の「LI」要素

ある
$('ul#mylist > li').each((i, v) => { 
    $(v).addClass('some-class-name'); 
}); 

3

矢印機能コンテキストのthisは呼び出しコンテキストと同じです。

each機能がそれほど

$('ul#mylist > li').each((i, el) => { 
    $(el).addClass('some-class-name'); 
}); 

または

ループに
$('ul#mylist > li').addClass('some-class-name');