1.什么是getter,什么是setter?
getter 是一种获得属性值的方法,setter是一种设置属性值的方法。
2.怎么定义?
有2种办法:
- 在对象初始化的时候定义
- 在对象定义后的时候定义
3.例子:
<!DOCTYPE html> <html> <head> <title>yupeng's document </title> <meta charset="utf-8"/> </head> <body> <script type="text/javascript"> //demo1 var obj = { val:100, get getval(){ return this.val; }, set setval(x){ this.val = x; } } console.log(obj.getval); obj.setval = 101; console.log(obj.getval); //demo2 var obj2 = { val:200 } obj2.__defineGetter__('name',function(){return this.val}); obj2.__defineSetter__('name',function(name){this.val = name;}) console.log(obj2.name) obj2.name = 201; console.log(obj2.name); </script> </body> </html>
结果: