gpt4 book ai didi

javascript - setTimeout javascript 无法正常工作

转载 作者:行者123 更新时间:2023-12-02 14:03:51 26 4
gpt4 key购买 nike

我想知道如何使用 phantomjs 等待两次 5 秒并在每次等待中执行不同的操作。代码如下:

var page = require('webpage').create();

page.open("http://www.google.com/", function(status){

var currentdate = new Date();

console.log("\n\n" + currentdate.getHours() + ":" + currentdate.getMinutes() + ":" + currentdate.getSeconds() + "\n\n");


setTimeout(function(){
var currentdate1 = new Date();
console.log("\n\n" + currentdate1.getHours() + ":" + currentdate1.getMinutes() + ":" + currentdate1.getSeconds() + "\n\n");
return "hahaha";
}, 5000);


setTimeout(function(){
var currentdate2 = new Date();
console.log("\n\n" + currentdate2.getHours() + ":" + currentdate2.getMinutes() + ":" + currentdate2.getSeconds() + "\n\n");
phantom.exit();
return "hahaha";
}, 5000);

});

为什么phantomjs的第二个setTimeout函数不能正常工作?我怎么解决这个问题?我想要实现的输出是这样的:

16:13:10
16:13:15
16:13:20

而不是这个(就像现在一样):

16:13:10
16:13:15
16:13:15

抱歉我的英语不好。谢谢

最佳答案

setTimeout 是异步的,当您启动一个时,代码不会停止运行,它会继续执行其他部分,您将在其中启动第二个 setTimeout。要解决您的问题,您需要将第二个超时的延迟更改为 10000,或者需要在第一个超时内启动第二个超时。

关于javascript - setTimeout javascript 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40206859/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com