__lookupGetter__ VS getOwnPropertyDescriptor 检索 getter

问题描述 投票:0回答:1

我正在尝试为 "HTMLStyleElement.prototype.innerHTML" 设置一个 getter 。 但我仍然需要检索本机的,以便我可以在完成后调用它。 如果我像这样使用

__lookupGetter__

HTMLStyleElement.prototype.__lookupGetter__("innerHTML")

我将获得原始的 getter ,但根据 MDN,此功能已从网络标准中删除。

所以我尝试使用

Object.getOwnPropertyDescriptor()

像这样:

Object.getOwnPropertyDescriptor(HTMLStyleElement.prototype,"innerHTML").get

但由于某种原因它会返回“未定义”,那么我做错了什么?

javascript html getter prototypal-inheritance
1个回答
4
投票

.innerHTML
属性是继承的。
__lookupGetter__
似乎考虑到了这一点,但是当使用
getOwnPropertyDescriptor
时,您需要从定义它的
Element.prototype
中检索它:

Object.getOwnPropertyDescriptor(Element.prototype,"innerHTML").get
© www.soinside.com 2019 - 2024. All rights reserved.