js中this的指向

1、如果this不在function里面,都是window
2、在function里面  this永远指向调用者
        a、普通调用  this就是window

    //普通调用
            var a = function(){
                console.log(this);
            }
            a(); // == window.a();


         b、对象调用  this就是调用该方法的对象

    //对象调用
            var dog = {
                name: '多多',
                showName: function(){
                    console.log(this.name);
                }
            };
            dog.showName();
           
         c、事件驱动和事件绑定
                1、事件驱动  this就是添加事件的那个对象
                 2、事件绑定  
                         ie: window
                         非ie:绑定事件的对象(btn)
         d、类里面的this  使用new时创建的一个新对象
                类里面(function)一般不会出现变量
         e、call/apply (不传参数默认为window)
                  改变function内部的this指向                     

                fn && fn.call(this); //obj

转载于:https://www.cnblogs.com/zhou123/p/5975661.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值