尚硅谷vue课程之Object.defineProperty
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <script src="https://cdn.jsdelivr.net/npm/vue@2.7.10/dist/vue.js"></script> <title>Document</title> </head> <body> <script type="text/javascript"> Vue.config.productionTip = false; let number = 888 let person = { name: "老铁", sex: "男" } Object.defineProperty(person, 'age', { // value: 666, // enumerable:true, //控制属性是否可以枚举,默认值是false // writable:true, //控制属性是否可以被修改,默认值是false // configurable:true //控制属性是否可以被删除,默认值是false get() { console.log('读取age...') return number }, set(value) { console.log('写入age...') number = value } }) console.log(person) </script> </body> </html>