标签:
首先这是es5新增的;定义是设置和获取对象属性时候出发的方法,属于修饰器;
犀牛书例子:
function test(n){ return { get count(){ return n }, set count(m){ if(m>=n){ n=23 } } } };
函数返回对象,当设置count的属性时候,会触发set判断,如果新的值大于n,那么为23;get就是获取这个属性时候出发的; var c=test(10); c.count=104; console.log(c.count);
该方法等同于
function Person() { var age = new Date().getFullYear() - 18; Object.defineProperty(this, "age", { get: function () { alert("内部存储数据为:" + age); return new Date().getFullYear() - age; }, set: function (value) { age = value; } }); }
标签:
原文地址:http://www.cnblogs.com/lyz1991/p/5463259.html