首页 > 解决方案 > 为什么我们需要在这个例子中使用 THIS 关键字?

问题描述

我是一名初学者,并且从 udemy 课程中学习了很长时间,并且我遇到了这个示例,我们使用 THIS 关键字来引用它的对象中的属性。但是,我不明白为什么我们不能像通常在对象之外那样通过执行以下操作来获取属性:objectname.property。我测试了它,它似乎工作正常。我显然错过了一些东西,所以如果有人能让我知道,那将不胜感激!示例如下。与其使用它,不如直接使用 mark.bmi。

const mark = {
    name: `mark`,
    mass: 92,
    height: 1.95,
    bmiCalc: function() {
       this.bmi = this.mass / (this.height * this.height);
       return this.bmi;
    }
}

标签: javascriptthis

解决方案


将变量名mark改为jacob,不需要重构。但是,如果您已更改this为,mark那么您还需要将其更改为新的变量名。

通常你从一个类中创建更多的对象(或实例)。类中定义的方法不仅仅适用于这个对象(mark)。这就是在面向对象编程中使用它的原因。


推荐阅读