传递javascript对象属性
在以下情况下,如何传递对象属性:传递javascript对象属性,javascript,Javascript,在以下情况下,如何传递对象属性: ObjectTest = function() { this.var1= "3"; this.var2= ""; } 电话呢 ObjectTest .prototype.allFriends = function() { function bindEvents() { //pass var1 here } } 是否有一种方法可以传递ObjectTest属性,而不
ObjectTest = function()
{
this.var1= "3";
this.var2= "";
}
电话呢
ObjectTest .prototype.allFriends = function() {
function bindEvents() {
//pass var1 here
}
}
是否有一种方法可以传递ObjectTest属性,而不将其作为bindEvents()的属性传递。如果可能的话,我更喜欢全球解决方案
ObjectTest.prototype.allFriends = function() {
do_smth_with(this.var1);
}
不过,请注意,通过调用newobjecttest()
,您将创建一个新的ObjectTest
;如果没有new
关键字,它将无法工作
编辑:由于内部函数将继承外部函数的(allFriends
),因此它仍将工作:
如果它仍然对您不起作用,请参考家长的此:
ObjectTest .prototype.allFriends = function() {
var parent = this;
function bindEvents() {
console.log(parent.var1);
}
}
不过,请注意,通过调用newobjecttest()
,您将创建一个新的ObjectTest
;如果没有new
关键字,它将无法工作
编辑:由于内部函数将继承外部函数的(allFriends
),因此它仍将工作:
如果它仍然对您不起作用,请参考家长的此:
ObjectTest .prototype.allFriends = function() {
var parent = this;
function bindEvents() {
console.log(parent.var1);
}
}
您在allFriends原型中使用的代码与在构造函数中使用的代码相同:
ObjectTest = function()
{
this.var1= "3";
this.var2= "";
}
ObjectTest.prototype.allFriends = function() {
alert(this.var1);
}
您在allFriends原型中使用的代码与在构造函数中使用的代码相同:
ObjectTest = function()
{
this.var1= "3";
this.var2= "";
}
ObjectTest.prototype.allFriends = function() {
alert(this.var1);
}
相同:this.var1-运行此:
ObjectTest = function() {
this.var1 = 3;
this.var2 = "";
};
ObjectTest.prototype.allFriends = function() {
alert(this.var1);
};
x = new ObjectTest();
x.allFriends();
或者看看这个小提琴:它是一样的:this.var1-运行这个:
ObjectTest = function() {
this.var1 = 3;
this.var2 = "";
};
ObjectTest.prototype.allFriends = function() {
alert(this.var1);
};
x = new ObjectTest();
x.allFriends();
或者看看这把小提琴: