jQueryのセレクターの使用方法を知って$(this)
おり、JavascriptでのOOPの原則も理解しています。他の誰かがそれを実装したので、私はいつもそれがうまくいくことを受け入れました、しかし私はそれがなぜそしてどのように働くのか知りたいです。
$(function(){
$('.foo').each(function(){
console.log($(this));
});
});
このコードを考えると。HTML要素のセットを見つけて、を使用してそれらを反復処理できるjQueryオブジェクト$('.foo')
を返すことを私は知っています。次に、メソッドの内部構造は、パラメーターとして渡されたクロージャーを呼び出す可能性があります。.each(...)
each()
しかし、なぜthis
クロージャー内の特定のHTML要素を参照するのでしょうか。this
ラッパーが。を使用してインスタンス化されている限り、これは新しいスコープのみを参照すると常に思っていnew
ました。それで、代わりにthis
参照された場合、それははるかに一貫性がありませんか?window