对象常量: 结合writable和configurable:false 可以创建一个真正的常量属性
禁止扩张:Object.preventExtensions(obj)来禁止一个对象添加新属性并保留已有属性

密封: 在 Object.seal(obj) 后不能增,删,改 该属性

冻结: Object.freeze(obj) 会禁止对于对象本身及任意直接属性的修改

vara={}Object.defineProperty(a,"b",{value:123,writable:false,enumerable:false,configurable:false})

value:属性的值(不用多说了)writable:如果为false,属性的值就不能被重写,只能为只读了configurable:总开关,一旦为false,就不能再设置他的(value,writable,configurable)enumerable:是否能在for...in循环中遍历出来或在Object.keys中列举出来。get,set:在descriptor中不能同时设置访问器(get和set)和wriable或value,否则会错,就是说想用(get和set),就不能用(wriable或value中的任何一个)