an example of what "this" is referred to?

var name = "A";
var obj = {
    name: "B",
    getName: function() {
        return function() {
            return this.name;
        };
    }
};

console.log(obj.getName()());  // A

結果是A,不是B,是因為最後return 的this是放在一般的匿名函式中,因而this並無可參考指向的物件,就會指向最外層的window物件,因而可視為this.name = window.name="A"。

留言

熱門文章