Значение this в Javascript

Может кто-нибудь объяснить, почему «это» в следующих пунктах указывает на объект DOM, а не на окно?

$("a").click(function() {
    console.log(this);
});

Это дает:

<a id="first" href="http://jquery.com">

Рассмотрим следующее, что должно быть тем же сценарием:

function Foo() {
    this.click = function(f) {
        f();
    }
}

var obj = new Foo();
obj.click(function() {
    console.log(this);
});

Здесь мы получаем объект Window (, что я и ожидал ).

5
задан fliX 2 July 2012 в 07:52
поделиться