From CommonJS Spec Wiki
Jump to: navigation, search


JavaScript does not have a binary data type. However, in server-side scenarios, binary data needs to be often processed. That is why we need some working byte or binary array or string class.


  1. Binary/A Proposal A from Ondras
  2. Binary/B Proposal B from Kris Kowal (implemented by a few platforms)
  3. Binary/C Proposal C from Daniel Friesen
  4. Binary/D Proposal D from Kris Kowal (based on Binary/B, -array-comprehsiveness, +bits, +radix-encoding)
  5. Binary/E Proposal E (based on Binary/D with byte string [[Get]] returning Number instead of ByteString, +Binary base type, -bits, -radix-encoding, -patching)
  6. Binary/Lite Proposal "Lite" from Ondras (single Binary type -charsets)
  7. Binary/F Proposal F (based on Binary/E but viciously trimmed, -ByteString, s/ByteArray/Buffer/ -flexible length)

Binary/B is the one which was standardized. Additional work was done on subsequent proposals to find something of greater use and less weight, but that work is essentially unfinished.

Prior Art

Relevant Discussions

Encodings are a related topic.