首页 > javascript setter 和 getter到底是做什么的

javascript setter 和 getter到底是做什么的

实在搞不懂setter 和getter是干嘛的,有的地方写的又是set,get,看了很多一些资料还是不太懂他们用在什么地方


来来来,看看这个好玩的东西你就知道了:深入响应式原理

@尤小右写的vue里,数据绑定就用是你迷惑的settergetter实现的。

high的很,文档解释的也很通俗


如果你是指ES5开始出现的对象字面量中的set、get方法的话,那么是这样的:

在ES5以前,读/写对象的属性时,产生的结果就是返回了对象属性的值/设置了对象属性的值。

在ES5之后,对于用get/set方法定义的属性来说,对它进行读/写属性时,其结果却是可以由开发者来自定义的。即给了开发者自己去定义“读/写对象的属性”这个两种操作的具体行为的权利,使得灵活性大大提高。

至于可以做什么,举两个例子:

set: function(pw) {
    this.pw = pw;
    console. log('密码被修改了');
}
//假设b是一个依赖a的属性,这样一来b就可以自动更新了
set: function(a) {
    this.a = a;
    this.b = a * 100;
}
【热门文章】
【热门文章】