js 高级方法 getter/setter

var o = (function () {
var num = 13;
return {

// get 名字 () { 逻辑体 }
get num () {
  console.log( '执行 getter 读写器了' );
  return num;
},

// set 名字 ( v ) { 逻辑体 }
set num ( v ) {
  console.log( '执行 setter 读写器了' );

  if ( v < 0 || v > 150 ) {
    console.log( '赋值超出范围, 不成功 ' );
    return;
  }
  num = v;
}
};
})();

//var obj = { num: 123 }; // 要限制其赋值的范围
// obj.age 要求 age 的范围是 0 到 150

console.log( o.num );
o.num = 33;
console.log( o.num );

 

posted @ 2018-01-12 16:12  九间房  阅读(380)  评论(0编辑  收藏  举报