JavaScript如何使用this

本文详细介绍了JavaScript中this关键字的四种使用场景:全局调用、作为对象方法调用、作为构造函数调用及使用apply()/call()方法调用,并强调了this指向调用它的对象这一核心概念。

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

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

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

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

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

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

 

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

1     var o ={};
2     o.a = 1;
3     o.demo = function () {
4         alert(this.a)
5     };
6 
7     o.demo()   //弹窗 1   o调用

 

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

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

 

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

 1     var a = 1;
 2     function Demo() {
 3         alert(this.a)
 4     }
 5 
 6     var o = {};
 7     o.a = 2;
 8     o.demo = Demo;
 9 
10     o.demo.apply(o)   //弹窗2
11     o.demo.apply()    //弹窗1

重要的东西再说一遍

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

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

转载于:https://www.cnblogs.com/web-Rain/p/6010785.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值