Skip to content

Instantly share code, notes, and snippets.

@leodutra
Last active December 21, 2015 22:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save leodutra/72081b9e245e99817087 to your computer and use it in GitHub Desktop.
Save leodutra/72081b9e245e99817087 to your computer and use it in GitHub Desktop.
Node.js Buffer -> ArrayBuffer -> Buffer conversion / cloning functions
function toArrayBuffer(buffer) {
const ab = new ArrayBuffer(buffer.length);
const view = new Uint8Array(ab);
for (var i = 0, l = buffer.length; i < l; i++) {
view[i] = buffer[i];
}
return ab;
}
function toBuffer(ab/*:ArrayBuffer*/) {
return new Buffer( new Uint8Array(ab) );
/*const buffer = new Buffer(ab.byteLength);
const view = new Uint8Array(ab);
for (var i = 0, l = buffer.length; i < l; i++) {
buffer[i] = view[i];
}
return buffer;*/
}
module.exports = {
toArrayBuffer: toArrayBuffer,
toBuffer: toBuffer
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment