Javascript 访问器属性

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

var book = {
    _year:2004,
    edition: 1
};

Object.defineProperty(book, "year", {
    get: function() {
        return this._year;
    },
    set: function(newValue) {
        if (newValue > 2004) {
            this._year += newValue;
            this.edition += newValue - 2004;
        }
    }
});

book.year = 2006;
console.log(book.edition);

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

植入部分

如果您觉得文章不错,可以通过赞助支持我。

如果您不希望打赏,也可以通过关闭广告屏蔽插件的形式帮助网站运作。

标签: 知识, 语法

添加新评论