数据代理:通过一个对象代理对另一个对象中的属性操作(读/写)
语法格式:Object.definePropery(想添加到哪个对象名,'想添加的属性名',{配置项})
配置项内有着几种内置属性,value为新添加属性的值,enumberable为是否可被枚举(可被遍历)默认值false,writeable是否可被修改默认值false,configurable新添加的这个属性是否可被删除默认值false
内置get方法当这个属性被调用时执行
内置set方法当这个属性被修改时执行
若value与get或者writable与set同时存在会报异常
详细文档 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty