JS - 基础 - this的指向(function 、 箭头函数)

本文探讨JavaScript中this的关键概念,重点在于箭头函数和普通函数中this的指向。箭头函数的this继承自其父执行上下文,例如在函数f()中,箭头函数的this就是f()的this,导致例子中输出333。而function中的this则取决于函数的调用方式。通过实例深入理解this在不同场景下的行为。

箭头函数this

箭头函数的this是继承父执行上下文里面的this

例子:

var x = 11;
var obb = {
    x: 222,
    y: {
        x:333,
        obc: function f() {
            console.log(this)
            var x = 111;
            var obj = {
                x: 22,
                say: () => {
                    console.log(this.x);
                }
            }
            obj.say()
        }
    }
}
obb.y.obc()

输出结果是333,
原因箭头函数没有this,剪头函数的this是继承父执行上下文里面的this ,这里箭头函数的执行上下文是函数f(),所以它就继承了f()的this,

function this

function中的this是函数的调用对象

参考: https://blog.csdn.net/cjgeng88/article/details/79846670

※ 例子(一例顶千言)

var a = {
  foo: () => {
        console.log(this) ;
    } , 
    boo: function()  {
        console.log(this) ;
    } ,
    coo: function() {
        return () => {
            console.log(this);
        }
    }
} ;
var b = a.boo ; 
a.foo() ;
a.boo() ;
b();
a.coo()() ;

在这里插入图片描述


参考:

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

骆言

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值