使用Javascript原型,如何从同一实例的另一个属性获取实例属性?
使用Javascript原型,如何从同一实例的另一个属性获取实例属性 我试图从使用Javascript原型,如何从同一实例的另一个属性获取实例属性?,javascript,prototype,javascript-objects,prototypal-inheritance,Javascript,Prototype,Javascript Objects,Prototypal Inheritance,使用Javascript原型,如何从同一实例的另一个属性获取实例属性 我试图从Main.prototype.b方法调用Main.prototype.a方法 我通过在Main.prototype.b上添加一个init方法来解决这个问题,该方法接受一个instance变量,并将其保存为this.instance,该变量稍后可用于引用其他方法中的实例 然后从Mainconstructor函数调用init方法,同时将this作为变量传递,但我觉得我缺少了另一个更优雅、更简单的解决方案 这只是我试图理解的
Main.prototype.b
方法调用Main.prototype.a
方法
我通过在Main.prototype.b
上添加一个init
方法来解决这个问题,该方法接受一个instance
变量,并将其保存为this.instance
,该变量稍后可用于引用其他方法中的实例
然后从Main
constructor函数调用init
方法,同时将this
作为变量传递,但我觉得我缺少了另一个更优雅、更简单的解决方案
这只是我试图理解的一个非常简单的例子:
var Main = function(){}
Main.prototype.a = {
value: 1,
one: function(){
this.value++;
console.log("added 1", this.value);
},
two: function(){
this.value--;
console.log("reduced 1", this.value);
},
three: function(){
this.value+=10;
console.log("added 10", this.value);
}
}
Main.prototype.b = {
one: function(){
//call Main.prototype.a.one
},
two: function(){
//call Main.prototype.a.two
},
three: function(){
//call Main.prototype.a.three
},
getValue: function(){
//return Main.prototype.a.variable
}
}
var main = new Main();
感谢您花时间阅读,并感谢所有提前提供解决方案的人 简单地说:
var Main=function(){}
Main.prototype.a={
价值:1,
一:函数(){
这个.value++;
console.log(“添加1”,此.value);
},
二:功能(){
这是价值观;
console.log(“减少1”,此值);
},
三:功能(){
该值+=10;
console.log(“添加10”,此值);
}
}
Main.prototype.b={
一:函数(){
Main.prototype.a.one();
},
二:功能(){
//呼叫Main.a.two
},
三:功能(){
//呼叫Main.a.3
},
getValue:function(){
//返回Main.prototype.a.变量
}
}
var main=新的main();
main.b.one();
main.b.one()代码>-尤其不是值
。您需要在构造函数中初始化它。