"Сброс Stdout в Node.js?"
Заголовок: Как произвести сброс стандартного вывода в Node.js, как это делается в Python?
Описание проблемы:
Я ищу способ сброса стандартного вывода (stdout) в Node.js, аналогично тому, как это делается в Python и других языках программирования.
Например, в Python я могу использовать следующий код:
import sys
sys.stdout.write('some data')
sys.stdout.flush()
На данный момент я нашел только process.stdout.write()
для Node.js. Но не совсем понимаю, есть ли в Node.js аналогичная функция для явного сброса вывода. Если да, то как её использовать?
Буду признателен за помощь!
1 ответ(ов)
В более новых версиях Node.js вы можете передавать колбэк в метод .write()
, который будет вызван, как только данные будут сброшены:
sys.stdout.write('some data', () => {
console.log('Данные были сброшены');
});
Это полностью аналогично проверке результата метода .write()
и регистрации на событие drain
:
let write = sys.stdout.write('some data');
if (!write) {
sys.stdout.once('drain', () => {
console.log('Данные были сброшены');
});
}
Таким образом, вы можете выбрать любой из этих подходов в зависимости от ваших предпочтений или требований вашего проекта. Первый вариант с колбэком более лаконичен и может улучшить читаемость кода.
Как узнать версию установленного npm пакета?
Как в Node.js "подключить" функции из других файлов?
Как задать переменные окружения из файла package.json?
Самый быстрый способ скопировать файл в Node.js
Как остановить Babel от трансформации 'this' в 'undefined' и добавления "use strict"