Home  >  Article  >  Web Front-end  >  Buffers: Node.js

Buffers: Node.js

Linda Hamilton
Linda HamiltonOriginal
2024-10-08 06:31:02919browse

Buffers: Node.js

Simple Guide to Buffers in Node.js

A Buffer in Node.js is used to handle raw binary data, which is useful when working with streams, files, or network data.

How to Create Buffers

  1. From a String:

   const buf = Buffer.from('Hello');


  1. Allocate a Buffer with a specific size:

   const buf = Buffer.alloc(10); // 10-byte buffer filled with zeros


  1. From an Array of bytes:

   const buf = Buffer.from([72, 101, 108, 108, 111]); // Represents 'Hello'


Important Buffer Functions

  1. Convert Buffer to String:

   const buf = Buffer.from('Hello');
   console.log(buf.toString()); // 'Hello'


  1. Get Buffer Length:

   const buf = Buffer.from('Hello');
   console.log(buf.length); // 5 (each character takes 1 byte)


  1. Write Data to Buffer:

   const buf = Buffer.alloc(5);
   buf.write('Hi');
   console.log(buf.toString()); // 'Hi'


  1. Slice a Buffer:

   const buf = Buffer.from('Hello World');
   const slice = buf.slice(0, 5);
   console.log(slice.toString()); // 'Hello'


  1. Copy from One Buffer to Another:

   const buf1 = Buffer.from('Hello');
   const buf2 = Buffer.alloc(5);
   buf1.copy(buf2);
   console.log(buf2.toString()); // 'Hello'


  1. Compare Two Buffers:

   const buf1 = Buffer.from('abc');
   const buf2 = Buffer.from('abc');
   console.log(buf1.equals(buf2)); // true


  1. Concatenate Multiple Buffers:

   const buf1 = Buffer.from('Hello');
   const buf2 = Buffer.from(' World');
   const buf3 = Buffer.concat([buf1, buf2]);
   console.log(buf3.toString()); // 'Hello World'


These are the key Buffer functions you need to know to start working with binary data in Node.js:

  • Create, write, and read Buffers
  • Slice, copy, compare, and concatenate Buffers

This is enough to handle most beginner use cases in Node.js!

The above is the detailed content of Buffers: Node.js. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn