在Javascript中创建变量实例,并在匿名函数中访问变量
我有以下JavaScript代码:在Javascript中创建变量实例,并在匿名函数中访问变量,javascript,jquery,Javascript,Jquery,我有以下JavaScript代码: var objSample = { variable: 10, func1 : function(){ someJQueryPlugin(1, function(){ this.variable; // this doesn't work, don't have access }); } } 我有两个问题: 1) 如何创建变量的实例,以便有两个独立的对象,每个对象都有其唯一的变量值 例
var objSample = {
variable: 10,
func1 : function(){
someJQueryPlugin(1, function(){
this.variable; // this doesn't work, don't have access
});
}
}
我有两个问题:
1) 如何创建变量的实例,以便有两个独立的对象,每个对象都有其唯一的变量值
例如:
var obj1 = new objSample();
obj1.variable = 1;
var obj2 = new objSample();
obj2.variable = 2;
2) 如何从对象中函数内的jQuery插件访问匿名函数内的变量。传递
此
没有帮助。您需要将代码从对象文本更改为构造函数,并确保在func1
函数中引用正确的此
var objSample = function(){
this.variable = 10
this.func1 = function(){
someJQueryPlugin(1, function(){
this.variable; <-- this doesn't work, don't have access
});
}
}
function ObjSample() {
this.variable = 10;
this.func1 = function () {
var _this = this;
someJQueryPlugin(1, function () {
_this.variable;
});
}
}
太好了,非常感谢Gena的快速响应。
var objSample = function(options){
var self = this;
self.variable = options.val
self.func1 = function(){
someJQueryPlugin(1, function(){
self.variable;
});
}
}
function ObjSample() {
this.variable = 10;
this.func1 = function () {
var _this = this;
someJQueryPlugin(1, function () {
_this.variable;
});
}
}