【发布时间】:2014-09-02 22:02:12
【问题描述】:
我正在尝试调用我的方法 Move();在对象 MySnake 中使用 setInterval:
function Snake()
{
this.Start = function(Speed)
{
this.Movement = setInterval(function(){
this.Move();
},Speed);
}
}
var MySnake = new Snake();
MySnake.Start(400); //Doesn't work
这不起作用。但是当我通过实例“MySnake”调用该方法时:
function Snake()
{
MySnake.Start = function(Speed)
{
this.Movement = setInterval(function(){
MySnake.Move();
},Speed);
}
}
var MySnake = new Snake();
MySnake.Start(400); //Works
我不希望使用“this”关键字来工作
【问题讨论】:
-
请注意,在区间回调中,
this很可能是窗口,因此您尝试调用window.Move(),否则它似乎可以工作? -
这很有用!谢谢!
标签: javascript methods this