阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      JS object __lookupSetter__()

      已废弃
      该特性已经从 Web 标准中删除,虽然一些浏览器目前仍然支持它,但也许会在未来的某个时间停止支持,请尽量不要使用该特性。

      **__lookupSetter__** 方法是用来返回一个对象的某个属性上绑定了 setter (设置器)的钩子函数的引用。

      语法

      obj.__lookupSetter__(sprop)
      

      参数说明

      sprop

      一个字符串类型,表示要返回的 setter 钩子的函数名。

      返回值

      一个绑定了setter的特殊属性的函数引用。

      描述

      如果一个 setter 被定义在了一个对象的属性上,则不能直接通过该属性来获取引用 setter 所设置的钩子的函数,因为该属性是该函数的返回值,但,__lookupSetter__ 可以被用来获取对 setter 函数的引用。

      不过现在可以使用标准的方法:

      Object.getOwnPropertyDescriptor().

      示例

      var obj = {
        set foo(value) {
          this.bar = value;
        }
      };
      
      
      // 非标准,并且不推荐使用。
      obj.__lookupSetter__('foo')
      // (function(value) { this.bar = value; })
      
      
      // 标准且推荐使用的方式。
      Object.getOwnPropertyDescriptor(obj, 'foo').set;
      // (function(value) { this.bar = value; })
      
      

      规范

      规范状态备注
      ECMAScript Latest Draft (ECMA-262)Object.prototype.__lookupSetter__()Draft包含在(规范性)附件中,用于Web浏览器的附加ECMAScript遗留功能(请注意,这份规范编撰的内容已经是准备实现的了)。

      相关链接

      目录
      目录