<script>var p = {name: "chen",work: function () {console.log("wording...");},_age: 18,get a() {return this._age;},set a(val) {if (val < 0 || val > 100) {//如果年龄大于100就抛出错误throw new Error("invalid value")} else {this._age = val;}}};console.log(p.name);//输出chenconsole.log('p.age: ', p.a); // 18console.log('p.age: ', p.a = 20); // 20// console.log('p.age: ', p.a = 200); // 抛出错误console.log("~~~~~~~~~~~~~~~~~~~~~~");let obj = {}Object.defineProperty(obj, 'test', {get: function () {console.log('调用get方法')},set: function (newVal) {console.log('调用set方法,新值为:' + newVal)}})obj.test; // '调用get方法'obj.test = '我们都是打工人' // 调用set方法,新值为:我们都是打工人</script>
