在一个对象中,如何从methodA someElement单击调用propertyA而不重写容器对象的名称。谢谢。 (对不起我的英语很差)。
var testObject = testObject || {
propertyA: true,
methodA: function(){
$('someElement').on('click', function(event){
testObject.propertyA = false; //here, how can i call propertyA without rewrite testObject, i want something generic
});
}
}
答案 0 :(得分:4)
您可以定义一个存储当前引用的变量,例如self
。
var testObject = testObject || {
propertyA: true,
methodA: function(){
var self = this;
$('someElement').on('click', function(event){
self.propertyA = false;
});
}
}
答案 1 :(得分:3)
一种解决方案是在调用methodA
时设置对象的对象引用,并在处理程序中使用它来引用对象。
var testObject = testObject || {
propertyA: true,
methodA: function () {
var self = this;
$('someElement').on('click', function (event) {
self.propertyA = false;
});
}
}