我如何从这个关键字获取年龄?

问题描述 投票:0回答:2
const meDetails = {
    firstName: 'arman',
    lastName: 'soltani',
    birthday: 1991,
    hasDriverLicense: true,

    calcAge: function () {
        this.age = 2037 - this.birthday;
        return this.age;
    }
};

console.log(meDetails.age);

为什么没有定义年龄?

javascript node.js
2个回答
0
投票

您需要先调用

calcAge()
来设置
age
属性

meDetails.calcAge();
console.log(meDetails.age);

但是您可能想要一个 getter 来实现

age

const meDetails = {
    firstName: 'arman',
    lastName: 'soltani',
    birthday: 1991,
    hasDriverLicense: true,
    
    get age() {
      return 2037 - this.birthday;
    }
};

console.log(meDetails.age);


-1
投票

名为

age
的变量在调用
calcAge
之前未初始化。

首先你应该在运行时调用

calcAge
来初始化
meDetailes.age
变量 那么
meDetails.age
就有价值了,你可以使用它

© www.soinside.com 2019 - 2024. All rights reserved.