globalThis.Buffer y la exportación Buffer de node:buffer son el mismo
objeto. Los buffers son instancias de Uint8Array con acceso indexado y un
ArrayBuffer subyacente estable.
import { Buffer } from "node:buffer";
const bytes = Buffer.from("hello", "utf8");
console.log(bytes[0]); // 104
console.log(bytes.toString("hex")); // 68656c6c6f
console.log(bytes instanceof Uint8Array); // trueUse Buffer.alloc, Buffer.allocUnsafe, Buffer.allocUnsafeSlow y
Buffer.from para crear buffers. Llamar a Buffer() o new Buffer() sigue
funcionando por compatibilidad, pero emite una advertencia de obsolescencia.
Están disponibles las operaciones habituales de Node, incluidas compare, copy, equals,
fill, includes, indexOf, slice, subarray, write, lecturas/escrituras numéricas de ancho
fijo y variable, lecturas/escrituras de BigInt e intercambios de bytes.
Las codificaciones admitidas incluyen utf8, utf16le, latin1, ascii, base64,
base64url y hex. No se acepta utf16be.
node:buffer también exporta Blob, File, SlowBuffer, atob, btoa,
isAscii, isUtf8, transcode, constantes de tamaño y auxiliares relacionados.
A diferencia de Node, las implementaciones de allocUnsafe de Elide devuelven memoria
rellenada con ceros en lugar de exponer bytes usados anteriormente.
Reference
Status: Full · 56 of 62 suite tests pass (90.3%) · since 1.1.0
Exports
| Export | Kind | Status | Notes |
|---|---|---|---|
Buffer | class | Full | Buffer.alloc(), Buffer.allocUnsafe(), Buffer., Buffer.from(), Buffer.isBuffer(), Buffer.isEncoding(), Buffer.byteLength(), Buffer.concat(), Buffer.compare(), length, buffer, byteOffset, compare(), copy(), equals(), fill(), includes(), indexOf(), lastIndexOf(), slice(), subarray(), write(), toString(), toJSON(), readUInt8(), readUInt16BE(), readUInt16LE(), readUInt32BE(), readUInt32LE(), readInt8(), readInt16BE(), readInt16LE(), readInt32BE(), readInt32LE(), readUIntBE(), readUIntLE(), readIntBE(), readIntLE(), readFloatBE(), readFloatLE(), readDoubleBE(), readDoubleLE(), writeUInt8(), writeUInt16BE(), writeUInt16LE(), writeUInt32BE(), writeUInt32LE(), writeInt8(), writeInt16BE(), writeInt16LE(), writeInt32BE(), writeInt32LE(), writeUIntBE(), writeUIntLE(), writeIntBE(), writeIntLE(), writeFloatBE(), writeFloatLE(), writeDoubleBE(), writeDoubleLE(), swap16(), swap32(), swap64() |
atob() | function | Full | Decodes a base64-encoded ASCII string into a Latin-1 string |
btoa() | function | Full | Encodes a Latin-1 string as base64 ASCII |
isAscii() | function | Full | Returns true if every byte’s high bit is clear (the input contains only 7-bit ASCII) |
isUtf8() | function | Full | Returns true if the bytes form a structurally valid UTF-8 sequence (no overlong forms, surrogates, or… |
kMaxLength | property | Full | Largest buffer size representable as a 32-bit JS integer (2^31 - 1) |
kStringMaxLength | property | Full | Largest string length the runtime will allocate (2^31 - 1) |
Tests: node-api node:buffer: 56 pass, 6 fail, 0 error, 7 skipped. Failing: test-buffer-alloc.js, test-buffer-constructor-node-modules-paths.js, test-buffer-constructor-node-modules.js, test-buffer-constructor-outside-node-modules.js, test-buffer-indexof.js, test-buffer-pool-untransferable.js.