我有一个场景,我需要覆盖sample.B中的sample.A
当我点击i时,我将调用一个函数,我需要调用sample.A.Test(),它需要在sample.B内部调用重写函数(Test)并仅执行此函数。有可能吗?
我的同行告诉我们java脚本会默认调用子类函数并执行,是真的吗?
以上情况
sample.A = (function () {
return {
Test: function(){
console.debug('Test in Super class');
},
}
sample.B = (function () {
return {
Test: function(){
console.debug('Test in Sub class');
},
}
可以通过java脚本或jquery来实现这种行为吗?
答案 0 :(得分:0)
要在JavaScript中启用“继承”,您至少需要添加一些实用程序方法。
例如:
function inheritMethods(fromA, intoB) {
for (x in fromB) {
if (typeof x === 'function') {
intoB[x] = fromA[x];
}
}
}
或类似的东西......
但是,由于经典OO意义上的“继承”不是JavaScript的原生,因此有很多方法可以模仿这一点。如果您能掌握这本书,那么在“代码重用”下的“JavaScript Patterns”中有一个很好的讨论。