Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 运行setTimeout并显示登录终端_Node.js_Settimeout - Fatal编程技术网

Node.js 运行setTimeout并显示登录终端

Node.js 运行setTimeout并显示登录终端,node.js,settimeout,Node.js,Settimeout,我试图在终端中使用下面的代码显示日志,但它只显示了一次,代码中有什么错误 我用下面的代码创建了一个文件time.js setTimeout(function() { console.log("setTimeout: It's been one second!"); }, 1000); 在终端上运行代码,就像这样 node time.js 输出如下所示 Apples-MacBook-Pro:s3 apple$ node time.js setTimeout: It's been one sec

我试图在终端中使用下面的代码显示日志,但它只显示了一次,代码中有什么错误

我用下面的代码创建了一个文件time.js

setTimeout(function() { console.log("setTimeout: It's been one second!"); }, 1000);
在终端上运行代码,就像这样

node time.js
输出如下所示

Apples-MacBook-Pro:s3 apple$ node time.js
setTimeout: It's been one second!
Apples-MacBook-Pro:s3 apple$ 

当我期待设置超时时:已经一秒钟了每分钟记录一次

您应该改用
setInterval
方法:

setInterval(function() { console.log("setInterval: It's been one second!"); }, 1000);

但是,请注意,此代码依赖于事件环回,如果您的代码占用事件环回的时间太长,则此代码可能不会按照理想情况每秒执行。

我还将补充一点,在运行密集型代码时,您可以调用process.nextTick(),以便触发其他事件。