Object.keys() 取得对象中所有可枚举的属性 function Person(){ }Person.prototype.name="summer";Person.prototype.age=20;Person.prototype.job="enginner";Person.prototype.sayName=function(){ console.log(this.name);} var keys=Object.keys(Person.prototype);console.log(keys); // ["name", "age", "job", "sayName"] var p1=new Person();p1.name="Bob";p1.age=27;var P1key=Object.keys(p1);console.log(P1key); // ["name", "age"] // 变量keys保存一个数组,数组中是字符串 "name", "age", "job", "sayName"// 如果通过Person的实例p1,则数组中只有字符串 "name", "age"。 //如果想得到所有实例属性,无论是否可以枚举,可以使用 Object.getOwnPropertyNames() var keys2=Object.getOwnPropertyNames(Person.prototype);console.log(keys2); // ["constructor", "name", "age", "job", "sayName"]
//Object.keys,Object.getOwnPropertyNames都可以用来代替for-in循环,// 支持的浏览器为IE9+,Firfox4+,Safari5+,Opera12+和Chrome
时间: 2024-08-11 09:52:10