enumberable 是es 6对象属性 意味 是否可以枚举
枚举属性的作用:
属性的枚举性会影响以下四个函数的结果:
for…in :只遍历对象自身的和继承的可枚举的属性
Object.keys():返回对象自身的所有可枚举的属性的键名
JSON.stringify:只串行化对象自身的可枚举的属性
Object.assign()(ES6) :只拷贝对象自身的可枚举的属性
也就是说,可枚举的属性都会被以上三个方法检测到并输出到最终结果
var obj = {a:1,b:2,c:3}
Object.defineProperty(obj, ‘d’, {
value: 4,
enumerable:false
});
(1)for in
for(key in obj){console.log(obj.[key])}
// 1 2 3
(2) Object.keys(obj)
// [a,b,c]
(3)JSON.stringify
JSON.strringify(obj)
//"{a:1,b:2,c:3}"
(4)Object.assign()
Object.assign(obj)
// {a:1,b:2,c:3}