Javascript方法使用
我正在尝试用JavaScript创建一个类,该类将被继承,而它的一些方法将被重写 我使用以下结构:Javascript方法使用,javascript,oop,Javascript,Oop,我正在尝试用JavaScript创建一个类,该类将被继承,而它的一些方法将被重写 我使用以下结构: function MyClass() { this.myvar = null; this.someotherVar = { someFunction: function(a,b){ function1(a,b); }) } // some functions MyClass.prototype.functionA = function() {..} MyClass.prot
function MyClass()
{
this.myvar = null;
this.someotherVar = { someFunction: function(a,b){ function1(a,b); })
}
// some functions
MyClass.prototype.functionA = function() {..}
MyClass.prototype.functionB = function() {functionC();}
//some functions that would be overrided
MyClass.prototype.function1= function() {...}
MyClass.prototype.functionC= function() {...}
现在我有两个问题:
functionC
在functionB
中使用可能会有问题,因为它是在之后定义的function1
中的someFunction
关联functionC
在functionB
中使用可能会有问题,因为它是在之后定义的
不,你只需要正确地称呼它:
function() { this.functionC(); }
// ^^^^^
否则将找不到该函数
当然,您还必须确保只在定义了functionC
之后调用functionB
二,。我如何以正确的方式与function1
中的someFunction
关联
一个小问题是someFunction
不是实例的方法,而是另一个对象的方法。要仍然调用正确的函数1
,可以将对实例的引用存储在变量中:
function MyClass() {
var self = this;
this.myvar = null;
this.someotherVar = {
someFunction: function(a,b){
self.function1(a,b);
}
};
}
极为模糊的标题将不会有助于未来的访问者到该网站与同样的问题。