JavaScript中的getter和setter

2017-11-14  本文已影响36人  createK

JavaScript中的getter和setter

在JavaScript中,可以使用getter属性和setter属性给对象的属性复制,在MDN的文档中,setter和getter连用,给对象创建一个伪属性。这种创建的属性MDN文档中称为伪属性。并且不能在具有真实值的属性上同时有一个setter。

Setter

语法

{set prop(val) {...}}
{set [expression](val){...}}

参数

注意:

setter定义的属性可以用delete操作移除

示例

对象初始化时定义setter

定义一个属性age,

//构造函数 Person
function Person(num){
   this.num = num;
   this._age = 18
 }
 Person.prototype = {
   constructor:Person,
   set age (value){
     if(!(value>100 || value< 0)) {
       this._age = this._age;
     } else {
         this._age = value 
     }
   },
   get age() {
       return this._age
   }
 }
 //实例
 var person = new Person(18)
 console.log(person.age)
 person.age = "40"
 console.log(person.age)

未完待续

上一篇下一篇

猜你喜欢

热点阅读