我知道JS中没有课程,但是有类似课程,对我来说真的很奇怪。我是JS的新手,我正在尝试构建一个简单的“类”。这就是我尝试的方式:
Game = new function() {
this.action_finish = 0;
this.thick = function() {
$('#action-finish').text(Game.action_finish--);
setTimeout(this.thick, 1000);
};
};
这就是它对我有用的方式,我想知道为什么this.action_finish
(返回NaN)在thick
函数中不起作用而不是Game.action_finish
。谁能解释为什么它会像这样工作?多年来我一直在使用PHP和C#进行开发,这种方法很难让我理解。
Ps。:我不需要这个类的更多实例,我想像使用新关键字的类一样使用它。
修改 这就是我使用它的方式:
Game.action_finish = 10;
Game.thick();
修改 最后我解决了我的问题。当我试图定义我的问题不是关于声明一个类的方法,而是到达一个类变量。
如果有人遇到同样的问题,以下是解决方案:
this.thick.bind(this)
可在此处找到一点解释:http://javascript.info/tutorial/binding