函数执行的环境为执行环境,当一个对象调用一个函数时,这个函数就在这个对象的环境中执行,所以this指针是指向这个对象的,当函数为全局函数时,他的执行环境为window,所以这个时候直接调用函数this指针指向window。
得出this指针永远指向调用他执行的环境,除非用call或apply从新指定他的执行环境
var age = 20;
function Test(){
alert(this.age);
}
var foo = new Test();//undefined foo对象中没有age变量
Test(); //20 this指针指向window
window.Test(); // 其实和上面一样