ByteBuffer.js uses either ArrayBuffers in the browser or Buffers under node.js.

Browser: ArrayBuffer-backed

Accessed through Typed Arrays

Using Typed Arrays here is pretty much ideal, but it requires a somewhat recent browser.

Accessed through a DataView (polyfill compatible)

Using DataViews is generally slower but works well with common polyfills for older browsers (avoids array access operators on Typed Arrays).

node.js: Buffer-backed

Also available as bytebuffer on npm and bower.