CodeSky 代码之空

随手记录自己的学习过程

Javascript 访问器属性

2014-12-21 21:46分类: JavaScript评论: 0

这个和构造函数的意思有点像,但功能又不同,他可以让两个属性建立关联,通过修改一个属性来改变另一个属性。

1var book = {
2    _year:2004,
3    edition: 1
4};
5
6Object.defineProperty(book, "year", {
7    get: function() {
8        return this._year;
9    },
10    set: function(newValue) {
11        if (newValue > 2004) {
12            this._year += newValue;
13            this.edition += newValue - 2004;
14        }
15    }
16});
17
18book.year = 2006;
19console.log(book.edition);
20

半年来的话,修改_year,输出值改变的只有year,但通过set,在修改year时edition也同时改变了。

评论 (0)