已废弃
该特性已经从 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!
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | 11 | (Yes) | (Yes) |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | (Yes) | ? | ? | (Yes) |