为什么这个可读流事件 "data" 输出会这样?
Why does this readable stream event, "data", output behave this way?
为什么这段代码的输出会这样?
我希望打印 1 个 'true' 字符串和 2 个 'false' 字符串,但我只打印了一个 'false'?
感谢您的宝贵时间。
process.stdin.setEncoding('utf-8')
process.stdin.on('data', (input) => console.log(input==="1"));
/* 标准输入:
1个
2个
3个
*/
/* 标准输出:
错误的
*/
因为 input
是 "1 2 3\n"
。 data
包含尽可能多的可供阅读的输入。 (在标准控制台 I/O 的情况下,这通常是一行。)流中没有任何内容试图通过在空格或类似的地方打断它来对其进行标记化。
为什么这段代码的输出会这样? 我希望打印 1 个 'true' 字符串和 2 个 'false' 字符串,但我只打印了一个 'false'?
感谢您的宝贵时间。
process.stdin.setEncoding('utf-8')
process.stdin.on('data', (input) => console.log(input==="1"));
/* 标准输入: 1个 2个 3个 */
/* 标准输出: 错误的 */
因为 input
是 "1 2 3\n"
。 data
包含尽可能多的可供阅读的输入。 (在标准控制台 I/O 的情况下,这通常是一行。)流中没有任何内容试图通过在空格或类似的地方打断它来对其进行标记化。