Javascript 如何正确返回object方法

Javascript 如何正确返回object方法,javascript,Javascript,我用javascript创建了MyObject,我需要像这样返回它的方法 var m = new MyObject(); document.onclick = m.myMethod; 但问题是,所有m实例变量似乎都未定义,我无法访问它们(即使它们是在m上定义的),对它们的操作会导致NaN。如何正确地执行此操作,以便在执行方法时保持实例变量的设置?这是因为this范围是html元素,而不是实例 要么关闭 document.onclick = function(evt) { m.myMethod(

我用javascript创建了
MyObject
,我需要像这样返回它的方法

var m = new MyObject();
document.onclick = m.myMethod;

但问题是,所有
m
实例变量似乎都未定义,我无法访问它们(即使它们是在
m
上定义的),对它们的操作会导致
NaN
。如何正确地执行此操作,以便在执行方法时保持实例变量的设置?

这是因为
this
范围是html元素,而不是实例

要么关闭

document.onclick = function(evt) { m.myMethod(evt); }


需要维护您所关注的范围。

您可以指定MyObject代码吗?是否像忘记使用
new
关键字那样简单<代码>var m=新的MyObject()?编辑:添加了“new”,它不在post中,但在代码中,所以这不是问题所在。
document.onclick = m.myMethod.bind(m);