登录
首页 >  文章 >  前端

JavaScript 中调用函数为何不打印:this 上下文绑定问题?

时间:2024-11-09 08:04:02 391浏览 收藏

小伙伴们对文章编程感兴趣吗?是否正在学习相关知识点?如果是,那么本文《JavaScript 中调用函数为何不打印:this 上下文绑定问题?》,就很适合你,本篇文章讲解的知识点主要包括。在之后的文章中也会多多分享相关知识点,希望对大家的知识积累有所帮助!

JavaScript 中调用函数为何不打印:this 上下文绑定问题?

JavaScript 中输出不打印的原因

在提供的代码中,遇到了一个问题:调用函数 bb.eat() 没有输出任何内容。这是为什么呢?

代码中定义了两个类,a 和 b。类 a 有两个属性(name 和 age)和一个方法(say),该方法打印 age 的值。

类 b 有一个方法(eat),它调用方法 a.call(b)。由于 this 上下文的改变,调用 a.say 将打印 b 的 age 值。

但是,在调用 bb.eat() 时,从未执行 this.say 方法。尽管 this 上下文被设置为 b,但 this.say 仍然引用的是类 a 的方法。换句话说,this.say 没有绑定到 b 实例上。

因此,调用 bb.eat() 并没有产生任何输出,因为没有打印 age 值。

终于介绍完啦!小伙伴们,这篇关于《JavaScript 中调用函数为何不打印:this 上下文绑定问题?》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布文章相关知识,快来关注吧!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>