as Object.getOwnPropertyNames()返回我想知道的属性数组 在javascript中是否有任何函数返回原型数组。
function PersonInfo(){
this.name=null;
this.sex=null;
this.age=null;
}
PersonInfo.prototype.getPersonInfo1=function(){
};
PersonInfo.prototype.getPersonInfo2=function(){
};
var pI=new PersonInfo();
//HERE we can use getOwnPropertyNames(pI) to get array of properties in PersonInfo() that result Array["name","sex","age"]
console.log(Object.getOwnPropertyNames(pI));
同样如何获得
数组[" getPersonInfo1"" getPersonInfo2"]
答案 0 :(得分:2)
您可以像这样使用Object.keys
Object.keys(PersonInfo.prototype)
答案 1 :(得分:1)
在ES6中,您可以使用Object.getPrototypeOf()功能:
console.log(Object.getOwnPropertyNames(Object.getPrototypeOf(pI)));
// Array [ "constructor", "getPersonInfo1", "getPersonInfo2" ]
注意:目前它不适用于所有环境(尤其是旧版浏览器)。您需要检查您的环境是否支持它