一、枚举对象
对象的属性枚举:
for in 遍历出来的是可枚举的
for in 遍历不出来是不可枚举的
name、age是能遍历出来的(是可枚举的),而toString constructor是遍历不出来的(即不可枚举的)。
#让name属性不可枚举
因此现在name属性是不可枚举的
但对象身上还有name属性,并没有删除这个属性,只是不能遍历出来了。
语法:
Object.defineProperty(对象,属性名称,{
enumerable:false
}) ===>让对象的属性不可枚举
二、对象的属性只读和只写(读GET_写SET)
get ===》读
set ===》写
#案例1 :
现在将其改为10
那么如果现在再去打印数组的length,那么仍然会是3.
#案例2:
如果修改属性,也不会更改为18
原因在于:这里的语法是做的读
因此只能读,不能写。
#那么怎么改呢?====》set
打印对象obj
现在再打印一下: