Sobes.tech
Back to questions
Middle+
6

Какие типы стримов есть в Node.js?

Companies where asked
Ifellow

Answer from AI

sobes.tech AI

В Node.js есть четыре основных типа стримов, которые реализуют интерфейс EventEmitter и позволяют работать с потоками данных:

  1. Readable (читаемые) — потоки, из которых можно читать данные (например, чтение файла, HTTP-запрос).
  2. Writable (записываемые) — потоки, в которые можно записывать данные (например, запись в файл, отправка HTTP-ответа).
  3. Duplex (двунаправленные) — потоки, которые одновременно читаемые и записываемые (например, TCP-сокеты).
  4. Transform (трансформирующие) — особый вид duplex-стрима, который может изменять или преобразовывать данные по мере их прохождения (например, сжатие, шифрование).

Пример использования readable и writable стримов:

const fs = require('fs');

const readable = fs.createReadStream('input.txt');
const writable = fs.createWriteStream('output.txt');

// Копируем содержимое файла
readable.pipe(writable);

Таким образом, стримы позволяют эффективно работать с большими объёмами данных, не загружая всю информацию в память сразу.