如何理解: `readline.Interface 的迭代将会始终完全消费输入流` ?

发布于 2022-09-12 14:03:25 字数 598 浏览 12 评论 0

http://nodejs.cn/api/readline...

文档写着:

rl[Symbol.asyncIterator]()

这个方法允许 `readline.Interface` 对象使用 `for await...of` 循环的异步迭代。

输入流中的错误不会被转发。

如果循环以 `break`, `throw` 或 `return` 终止,则 [`rl.close()`](http://nodejs.cn/api/readline.html#readline_rl_close) 将会被调用。 换句话说,对 `readline.Interface` 的迭代将会始终完全消费输入流。

性能比不上传统的 `'line'` 事件的 API。 对于性能敏感的应用程序,请使用 `'line'`。


for await (const line of rl) {
// readline 输入中的每一行将会在此处作为 `line`。
}

始终完全消费输入流 意思是什么? 意思是会整个读取不是按行读取? 意思是会把整个文件一次性读取完放入内存?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文