为什么在尝试调用我的方法时会出现未定义的情况?

Why am I getting undefined when I am trying to call my method?

尝试重新学习 JS 的初学者。下面是我的以下代码。我用 calculateAge 方法创建了一个人 class。当试图将我的新 const 传递到我的方法时,我得到一个未定义的,为什么会这样?请指教:

class Person6 {
    constructor (name, yearOfBirth, job) {
        this.name = name;
        this.yearOfBirth = yearOfBirth;
        this.job = job;
    }
    
    // Functions can directly add to the class
    calculateAge() {
        var age = new Date().getFullYear - this.yearOfBirth;
        console.log(age);
    }
    
    // Static classes
    static greeting() {
        console.log('Hey there!');
    }
}

const quang6 = new Person6('Quang', 1994, 'IT');

Person6.greeting();

quang6.calculateAge(); 
var age = new Date().getFullYear - this.yearOfBirth;

这行有问题。 属性 getFullYear 是一个你需要调用的函数,因为你没有这样做,所以你最终会得到 NaN。您需要在 .getFullYear

之后添加一个 ()