Object.prototype.__lookupSetter__() - JavaScript 编辑

已废弃
该特性已经从 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遗留功能(请注意,这份规范编撰的内容已经是准备实现的了)。

浏览器兼容性

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support(Yes)(Yes)11(Yes)(Yes)
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support(Yes)(Yes)(Yes)??(Yes)

相关链接

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

词条统计

浏览:124 次

字数:5399

最后编辑:8年前

编辑次数:0 次

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文