1、在对象中,可以设置一些奇怪的属性_num,称之为构造器属性。一般来说,这种属性不想直接通过外部访问(obj._num)。
我们希望控制这个属性的访问逻辑,obj.num可以访问它,然后改变它的逻辑。
2、构造器属性可以重写自定义属性的get和set方法。
实例
var obj={ _num:0 } obj.num可以访问到,返回 数字:0 Object.defineProperty(obj,‘num’,{ //当我们没有设置这个属性时,默认是隐式调用,如果设置了,会调用你设置的方法 //重写自定义属性的set和get属性 set(num){ thsi._num=num }, //在num的值被设置时调用 get(){ return ‘数字:’+this._num }//在num的值被获取时,调用 }) console.log(obj.num); obj.num=5; console.log(obj.num);
以上就是js中构造器属性的介绍,希望对大家有所帮助。更多js学习指路:
推荐操作环境:windows7系统、jquery3.2.1版本,DELL G3电脑。