0 Tage Serie
javascript / intermediate
Snippet

Manuelle Speicherverwaltung mit Buffers

Buffers werden verwendet, um Binärdaten in Node.js zu verarbeiten. Im Gegensatz zu Strings zeigen sie auf eine Speicherzuweisung fester Größe außerhalb des V8-Heaps. Die Verwendung von .subarray() erstellt eine Ansicht desselben Speichers, was effizient ist, aber bedeutet, dass Änderungen an der Ansicht das Original beeinflussen.

snippet.js
javascript
1
2
3
4
5
6
7
8
9
10
const buffer = Buffer.alloc(10); // Allocate 10 bytes
buffer.write('NodeJS', 0, 'utf-8');
console.log(buffer.toString('hex'));
const sub = buffer.subarray(0, 4);
console.log(sub.toString()); // 'Node'
sub.write('JS'); // Modifies the original buffer!
console.log(buffer.toString()); // 'JSdeJS'
nodejs
Erklärung
1
const buffer = Buffer.alloc(10);
Erstellt einen mit Nullen gefüllten Buffer von 10 Bytes für sichere binäre Speicherung.
2
buffer.subarray(0, 4);
Erstellt eine neue Buffer-Ansicht, ohne den zugrunde liegenden Speicher zu kopieren.