如何在NodeJS中以单行控制台日志格式制作实时时钟[重复]

Posted

技术标签:

【中文标题】如何在NodeJS中以单行控制台日志格式制作实时时钟[重复]【英文标题】:How to making live clock in single line console log format in NodeJS [duplicate] 【发布时间】:2021-12-08 16:44:57 【问题描述】:

在浏览器中,我们可以通过使用 setInterval 和替换 html 元素中的内容来使实时时钟单行显示,如下所示:

var span = document.getElementById('span');

    function time() 
      var d = new Date();
      var s = d.getSeconds();
      var m = d.getMinutes();
      var h = d.getHours();
      span.textContent = 
        ("0" + h).substr(-2) + ":" + ("0" + m).substr(-2) + ":" + ("0" + s).substr(-2);
    
setInterval(time, 1000);
<span id="span"></span>

但是,我们如何在终端控制台中使用 NodeJS 做同样的事情呢?如果我们使用 console.log 和 setInterval 它将创建新行。像这样:

07:00:01
07:00:02
07:00:03
07:00:04

我只想在终端上单行显示 console.log 实时时钟。

【问题讨论】:

@jarmod 不,仍然需要示例代码来在单行 console.log 终端中显示实时时钟。这需要像 setInterval 这样的永远循环实现 【参考方案1】:

您想使用\r 以标准输出终止前一行。

    setInterval(() => process.stdout.write(`$new Date()\r`), 1000);

【讨论】:

以上是关于如何在NodeJS中以单行控制台日志格式制作实时时钟[重复]的主要内容,如果未能解决你的问题,请参考以下文章

比较用 PHP hash() 和 NodeJS crypto.createHash() 制作的 SHA256

如何将 JSON 格式的单行 Spark 数据框分解为多行?

在php中以ul li格式解析树数据时遇到一些困难

如何将数据放在单行中以获取 2 个标题标签 html

如何使用socket.io mysql nodejs express删除帖子

在 Nodejs 中以编程方式连接到 Mongodb Amazon EC2 实例