是否有某种方法可以像setInterval一样创建函数,但每次超时都完全相同。 在setInterval中,超时会随着给定的超时而变化,稍微多一点,但会非常罕见,但是非常罕见。
例如:
var before = new Date().getTime();
setInterval(function() {
var after = new Date().getTime();
newTab.window.location=someURL;
console.log((after - before));
before = after;
}, 50000);
打印50000,50002,50005,50994,50997,49999,50003,49998等。 我想要打印50000
答案 0 :(得分:3)
Javascript仅在一个流程中执行,因此如果有另一个进程同时执行某些操作,则总是有可能无法及时执行计时器功能。
如果您确实需要确切的时间间隔,您可以提前阻止任何其他流程的执行,并希望获得最佳效果:
$fb = new Facebook\Facebook([
'app_id' => fbappid,
'app_secret' => fbappsecret,
'default_graph_version' => 'v2.2',
]);
$helper = $fb->getRedirectLoginHelper();
$permissions = ['email', 'user_birthday', 'user_location', 'user_hometown', 'user_relationships']; // Optional permissions
$loginUrl = $helper->getLoginUrl('http://localhost/urbanportal/wifilogin.php?origlink='.$_SESSION['origlink'].'&routerlink='.$_SESSION['routerlink'].'&siteid='.$_SESSION['siteid'], $permissions);
虽然操作系统阻止了该过程但仍然不准确...