Object.prototype.__defineSetter__()

 

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

 

        其实在上面这句官方语言里面,我们就可以知道了几点关键信息
        1、该方法是用于给对象设置/添加属性的
        2、当属性被赋值的时候会触发__defineSetter__绑定的函数
        3、方法名其实就是实例化对象的属性名
        4、Object.prototype === 实例.constructor
    
        语法:
        obj.__defineSetter__(prop, fun) 
        注意回调函数一定要传入属性的名字

 

      
        对比__defineGetter__:
        getter方法没有参数,setter方法必须有一个参数,也就是要设置的属性的新值。
        <!-- 参数是(属性,回调函数) -->
 
 
理解javaScript之Object.prototype.__defineSetter__()_添加属性