js中set和get的用法

get 语句作为函数绑定在对象的属性上,当访问该属性时调用该函数。

set 语法可以将一个函数绑定在当前对象的指定属性上,当那个属性被赋值时,你所绑定的函数就会被调用。

eg:

 var log = ['test'];
    var obj = {
      get latest () {
        if (log.length == 0) return undefined;
        return log[log.length - 1]
      }
}
console.log (obj.latest); // Will return "test".
var person = {
        _name: '',
        get name() { 
            alert(this._name);
            return this._name;
        },
        set name(n) {
           this._name = n;
           alert(this._name);
        }
    }
person.name;//调用name的时候,执行get里面的函数。
person.name = '456';//对name进行赋值的时候,执行set定义的函数。
console.log(person.name = '123');

 

posted @ 2017-03-22 17:25  行果  阅读(4062)  评论(0编辑  收藏  举报