for-in循环有一个问题,就是它不仅遍历对象的实例属性,同样还遍历从原型继承来的属性。当遍历自定义对象的属性时,往往会因为意外的结果而终止。所以要加上hasOwnProperty()方法来过滤实力属性。这也是DC大牛建议的。

hasOwnPrototype()方法可以检测一个属性是否存在于对象实例中。

var prop;
var object = {
    name: "name",
    value: "value"
};

for (prop in object) {
    if (object.hasOwnProperty(prop)) {
        console.log(prop);
    }
}

 

 

 

相关文章:

  • 2021-09-15
  • 2022-12-23
  • 2021-12-15
  • 2022-12-23
  • 2021-09-29
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-17
  • 2022-12-23
相关资源
相似解决方案