获取已定义对象javascript的不可枚举对象键

时间:2020-11-10 10:00:47

标签: javascript

我有一个声明的对象,然后尝试获取该对象的密钥,但是由于某种原因,我仅看到两个密钥,并且不确定要获得期望的密钥我缺少什么。 / p>

studentModel: StudentInfo = new StudentInfo();

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;
    }

0 个答案:

没有答案