this关键字
在普通函数中this始终指向 window
function fn(){
console.log(this);
}
fn(); // window
在构造函数中的this,始终指向当前new出来的对象
function Student(name,age,gender){
this.name = name;
this.age = age;
this.gender = gender;
this.sayHi = function(){
console.log("大家好,我是"+this.name+",今年"+this.age+"岁了,
我是一个"+this.gender+"生");
}
}
var zs = new Student("张三",20,"男");
zs.sayHi(); // 这里面的this就是张三这个对象
说明:
就当前js基础阶段来说this的用法有如下形式:
-
用于构造函数当中,始终表示当前new出来的对象
-
用于普通的函数当中,指代window
-
用于事件当中,始终指代当前正被触发的事件源(换句话说就是正在执行事件处理程序的函数)