我正在使用特殊的 getter/setter 来拦截对对象属性所做的更改,目前它对任何普通的用户定义属性都非常有效。但是,如果我可以将相同的想法应用于 HTMLInputElement.value
或 Array.length
等内置属性,我会喜欢,但这些是不幸的是,它们被定义为不可配置,因此在尝试使用 getter/setter 重新定义它们时出现错误。
我只是想知道是否有任何类型的(可靠的)hack 可以强制重新定义它们而不破坏它们的内部操作。
如果没有,我可能会被迫为所有这些简单地映射到 native 属性并使用它们的备用属性,但这并不理想。
最佳答案
稍后使用 JavaScript 1.8.1:Defining getters and setters
关于javascript - 将 JavaScript getter/setter 添加到 native 不可配置的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9180100/