遍历对象自身属性解决方案

72 阅读1分钟

很多时候只需要遍历对象自身的属性就足以, 这个时候应该怎么办呢? 遍历对象时,把原型上的属性遍历出来了怎么办?

使用hasOwnProperty判断

function Animal(name){
  this.name = name
}
Animal.prototype.age = 23;
const cat = new Animal('xxx')
for(key in cat){
  console.log(key)  // name age
}
for(key in cat){
  if(cat.hasOwnProperty(key)){
    console.log(key); // name
  }
}