gpt4 book ai didi

javascript - 如何获取javascript类属性列表

转载 作者:行者123 更新时间:2023-11-30 07:31:16 25 4
gpt4 key购买 nike

我有 javascript 这个类:

class Student {
constructor(name, birthDate) {
this.name = name;
this.birthDate = birthDate;
}

get age() {
return 2018 - this.birthDate;
}

display() {
console.log(`name ${this.name}, birth date: ${this.birthDate}`);
}
}

console.log(Object.getOwnPropertyNames.call(Student));

我想获取属性列表名称。我尝试使用这样的东西:

Object.getOwnPropertyNames.call(Student)

但它不起作用。在这个例子中我应该得到的只是名字和出生日期。没有其他方法或 setter/getter 。

最佳答案

问题是您错误地使用了 Object.getOwnPropertyNames。你不需要在它上面使用call,你只是调用它。*而且你需要传递一个Student的实例;类对象本身没有任何属性。属性是在构造函数中创建的,没有什么可以通过查看类对象告诉您实例将具有哪些属性。

class Student {
constructor(name, birthDate) {
this.name = name;
this.birthDate = birthDate;
}

get age() {
return 2018 - this.birthDate;
}

display() {
console.log(`name ${this.name}, birth date: ${this.birthDate}`);
}
}

console.log(Object.getOwnPropertyNames(new Student));

* 如果有的话,Object.getOwnPropertyNames.call(Object, new Student) 会做您想要的,但这是荒谬的。

关于javascript - 如何获取javascript类属性列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52201352/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com