我想创建一个JavaScript对象,如下所示。在不同的上下文中的JavaScript'this'
var MyObject = function (parameters) {
this.parameters = parameters;
parameters.userFunction(this.MyObjectCallback);
}
MyObject.SOME_STATIC_VARIABLE = 21;
MyObject.prototype = {
myObjectCallback: function() {
console.log(this);
}
}
MyObject
对象将接受它将传递处理程序的userFunction。用户函数会做一些逻辑,并将结果传递回实例,例如:
new MyObject({userFunction: function(callback) {
$.post(
'http://localhost/~knyttl/source.php',
{},
callback,
'json');,
}});
不幸的是,即使callback
正确调用,this
得到JQuery
对象的实例,而不是MyObject
实例如我所愿。总之,我无法保持MyObject
实例。
我甚至不确定这是否是创建JavaScript对象的正确方法。我会很感激任何建议。