【发布时间】:2015-12-27 16:21:43
【问题描述】:
我正在尝试装饰一些对象,例如:
Object.prototype.someFunc = function(x) {
if (x == 1) {
return x;
}
return super.someFunc() // <-- ?
}
如何在第二个 return 语句中调用我要覆盖的函数?
【问题讨论】:
-
首先,您通常不应该添加到原生对象的原型中,因为它可能会导致问题。其次,您必须将旧函数存储在临时变量中。
-
也许在这里你应该更清楚你想用super做什么,因为它是一种访问对象父级函数的特殊方式。
-
完全取决于您所说的“覆盖”。你要换吗?你在原型链中隐藏它吗?这就是为什么您需要对代码进行实际的、完整的演示。事实上,你的问题还不清楚。
标签: javascript