Подтвердить что ты не робот

Что такое буфер в Node.js?

Как вы можете прочитать в Node.js документации по классу Buffer, буфер

похож на массив целых чисел, но соответствует распределению необработанной памяти вне кучи V8.

До сих пор так хорошо.

Что меня сейчас озадачивает, так это вопрос о том, какой буфер технически говорит. Является ли это массивом с некоторыми дополнительными функциями для создания и преобразования в строки с использованием определенных кодировок?

Или там "больше"?

4b9b3361

Ответ 1

Буфер - это кусок памяти, как и у вас на C/С++. Вы можете интерпретировать эту память как массив целых чисел или чисел с плавающей запятой различной длины или как двоичную строку. В отличие от структур данных более высокого уровня, таких как массивы, буфер не изменяется.

Это примерно соответствует:

  • char* или char[] в C/С++
  • byte[] в Java
  • Измененный bytes или не изменяемый размер bytearray в Python
  • Строки в php, если они изменяются

Ответ 2

BUFFER - временное место для хранения данных, перемещаемых из одного места в другое.

Чтобы понять, что такое Buffer, нам нужно знать, как компьютер будет обрабатывать вещи. См. Таблицу ниже.

Концепция похожа, если вы смотрите Youtube Video, вы можете начать смотреть видео без загрузки всего видео. Если ваша скорость в Интернете слишком медленная, вы увидите "буферизацию", это означает, что компьютер пытается собрать данные, чтобы вы могли смотреть это видео.

Ответ 3

Объяснение из http://nodejitsu.com/...

Буферы являются экземплярами класса Buffer в node, который разработан для обработки необработанных двоичных данных. Каждый буфер соответствует некоторой необработанной памяти выделенных вне V8. Буферы действуют как массивы целых чисел, но не изменяются по размеру и имеют целую кучу методов конкретно для двоичных данных. Кроме того, "целые числа" в буфере каждый представляют собой байты и поэтому ограничены значениями от 0 до 255 (2 ^ 8 - 1), включительно.

Подробнее: Буферы в Node.js