A [ponyfill](https://ponyfill.com) for `Buffer.from`, uses native implementation if available.

Downloads in past


2131.1.22 years ago7 years agoMinified + gzip package size for buffer-from in KB


Buffer From
A ponyfill for Buffer.from, uses native implementation if available.


npm install --save buffer-from


const bufferFrom = require('buffer-from')

console.log(bufferFrom([1, 2, 3, 4]))
//=> <Buffer 01 02 03 04>

const arr = new Uint8Array([1, 2, 3, 4])
console.log(bufferFrom(arr.buffer, 1, 2))
//=> <Buffer 02 03>

console.log(bufferFrom('test', 'utf8'))
//=> <Buffer 74 65 73 74>

const buf = bufferFrom('test')
//=> <Buffer 74 65 73 74>



  • array <Array>

Allocates a new Buffer using an array of octets.

bufferFrom(arrayBuffer, byteOffset, length)

  • arrayBuffer <ArrayBuffer> The .buffer property of a TypedArray or ArrayBuffer
  • byteOffset <Integer> Where to start copying from arrayBuffer. Default: 0
  • length <Integer> How many bytes to copy from arrayBuffer. Default: arrayBuffer.length - byteOffset

When passed a reference to the .buffer property of a TypedArray instance, the newly created Buffer will share the same allocated memory as the TypedArray.
The optional byteOffset and length arguments specify a memory range within the arrayBuffer that will be shared by the Buffer.


  • buffer <Buffer> An existing Buffer to copy data from

Copies the passed buffer data onto a new Buffer instance.

bufferFrom(string, encoding)

  • string <String> A string to encode.
  • encoding <String> The encoding of string. Default: 'utf8'

Creates a new Buffer containing the given JavaScript string string. If provided, the encoding parameter identifies the character encoding of string.

See also