首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有换行符的Node.JS写到stdout

问没有换行符的Node.JS写到stdout
EN

Stack Overflow用户
提问于 2016-01-22 23:24:34
回答 2查看 10.6K关注 0票数 10

我有一种可能不可能的感觉:我试图在终端文本上打印,而没有新的行。我尝试过process.stdout.write和npm jetty,但它们似乎都自动在末尾添加了一个新行。

是否可以在没有自动换行符的情况下写入stdout?我只想澄清一点:我不关心浏览器,我只对UNIX/Linux编写的C/C++相当于:

代码语言:javascript
复制
std::cout << "blah";
printf("blah");
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-23 00:54:19

process.stdout.write()不会自动添加新行。如果您发布了关于为什么会这样做的详细信息,我们可能会告诉您您是如何感到困惑的,但是尽管console.log() 确实添加了一个换行符,但process.stdout.write()没有任何修饰,也不会写任何您没有显式传递给它的内容。

下面是一个shell会话,提供支持性证据:

代码语言:javascript
复制
echo 'process.stdout.write("123")' > program.js

node program.js | wc -c
       3
票数 7
EN

Stack Overflow用户

发布于 2016-01-23 00:48:53

根据这个链接process.stdout.write()

console.log等价物可能如下所示:

代码语言:javascript
复制
console.log = function(msg) {
  process.stdout.write(`${msg}\n`);
};

所以process.stdout.write应该满足你的要求..。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34957613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档