Javascript中的背景循环机制?

时间:2012-05-29 19:46:02

标签: javascript

我正在开发一个简单的模拟,涉及城市预算,供当地官员使用。我已经开发了一个用于模拟的地图和一个在调用其函数时“增长”地图的算法。因此,updateMap();导致整个游戏领域发生了许多变化。目前,我将此功能绑定到游戏中的其他机制,例如,每次发生其他事件时都会调用一次。我的问题是:有没有办法有这样的东西

while (true)
    setTimeout('updateMap();', 45000);

这样地图将独立于用户正在做的事情以及游戏中发生的任何事情而自行更新。我知道Javascript不支持线程,但有没有可以模拟一些像这样的简单线程?

3 个答案:

答案 0 :(得分:4)

您将寻找setInterval(updateMap, 45000)

它将采用您提供的功能并每隔x毫秒运行一次。

希望这有帮助!

答案 1 :(得分:1)

您想拥有一个WebWorker:

http://caniuse.com/#search=webworker

答案 2 :(得分:1)

答案确实是setInterval()。可以在此处找到使用它来模拟多线程的示例:http://www.sitepoint.com/multi-threading-javascript/