JavaScript如何使用this

时间:2023-03-09 18:43:16
JavaScript如何使用this

学习this的使用必须牢记以下两点

  1、this是一个只能在函数内部使用的关键字

  2、this指向调用函数的那个对象

下面我们来具体讨论一下this的具体使用方法

第一种:通过函数调用的方式------------->this指向的是全局(浏览器中就是window)

    var a = 1;
function Demo() {
alert(this.a)
}
Demo(); //弹窗 1 相当于全局调用

第二种:作为对象方法来调用------------->this指向这个对象

     var o ={};
o.a = 1;
o.demo = function () {
alert(this.a)
}; o.demo() //弹窗 1 o调用

第三种:作为构造函数来调用------------->即:通过new 产生一个新对象,this就指向这个对象

     function Demo() {
this.a = 1
}
var o = new Demo()
alert(o.a) //弹窗 1 o调用

第四种:apply()/call()------------->这两个是函数对象的一个方法,this指向他们的第一个参数如果不传参数this指向全局

     var a = 1;
function Demo() {
alert(this.a)
} var o = {};
o.a = 2;
o.demo = Demo; o.demo.apply(o) //弹窗2
o.demo.apply() //弹窗1

重要的东西再说一遍

  1、this是一个只能在函数内部使用的关键字

  2、this指向调用函数的那个对象