js中的枚举

在JavaScript中,对象的属性分为可枚举和不可枚举之分,它们是由属性的enumerable值决定的。可枚举性决定了这个属性能否被for…in查找遍历到。 js中基本包装类型的原型属性是不可枚举的,如Object, Array, Number等

1. for…in循环可以枚举(遍历)出对象本身具有的属性,通过Object.defineProperty()方法加的可枚举属性,或者通过原型对象绑定的可以枚举属性。

2. Object.keys()方法可以枚举对象本身的属性和通过Object.defineProperty()添加的可枚举属性

3.  JSON.stringify()方法只能序列化本身的属性和通过Object.defineProperty()添加的可枚举属性为JSON对象

原文地址:https://www.cnblogs.com/zzxuan/p/9803910.html