获取已定义对象javascript的不可枚举对象键
我有一个我声明的对象,然后我尝试获取该对象的密钥,但由于某种原因,我只看到两个密钥出现,不确定我缺少什么来获取我期望的密钥获取已定义对象javascript的不可枚举对象键,javascript,Javascript,我有一个我声明的对象,然后我尝试获取该对象的密钥,但由于某种原因,我只看到两个密钥出现,不确定我缺少什么来获取我期望的密钥 studentModel:StudentInfo=newstudentinfo(); StudentInfo模型定义如下: export default class StudentInfo extends HomeModel { name: string; address: string; isActive: boolean = true; } 目前,当我尝试获
studentModel:StudentInfo=newstudentinfo();
StudentInfo
模型定义如下:
export default class StudentInfo extends HomeModel {
name: string;
address: string;
isActive: boolean = true;
}
目前,当我尝试获取对象关键点时,我得到的是:
0: "customValidatorError"
1: "Component"
我尝试了Object.keys(studentModel)
和Object.getOwnPropertyNames(studentModel)代码>
我想得到的关键清单包括:姓名,地址和isActive
我也尝试了基于上一个堆栈溢出答案的代码,它确实为我提供了我正在寻找的所有密钥,但也提供了很多我不需要的密钥:
getAllPropertyNames (o //studentModel) {
let propertyNames = []
for (let proto = o; proto !== null; proto = Object.getPrototypeOf(proto)) {
propertyNames = propertyNames.concat(Object.getOwnPropertyNames(proto))
}
return propertyNames;
}
请显示StudentInfo
代码背后的实际代码。这看起来像是一个typescript类声明,而不是javascript声明?看起来你从来没有初始化过这些属性,所以它们不存在于你的对象上。