一个对象的属性在没有做任何处理的情况下,是可以被轻易修改或删除,是非常不安全的。一些重要的数据,也不希望被随意修改或删除。
每个属性都有四大特征
使用Object.defineProperty()或Object.defineProperties()方法可以对四大特征进行修改。
一、value
实际存储属性值
二、writable
是否可以修改,默认是true
改为false后在控制台对属性进行++操作时,值并未发生改变
三、enumerable
是否可被for in遍历 仅仅只能控制 for in 无法控制访问
eid的enumerable属性特征为false,eid不会被for in遍历
四、configurable
是否可修改其他属性特征,是否可删除该属性
当configurable属性设置为false时,修改其他属性特征时会报错