JSFiddle - React, Tailwind, and code Playground
HTML
ArrayBuffer and TypedArrays Demo by Troy Whorten 3/27/2014
<br>Enter a number, any number:
<br>
<input type="text" onkeyup="document.getElementById('target').innerHTML=''; number(this.value);" />
<div id="target"></div>
JavaScript
//by Troy Whorten 3/27/2014
function write(str1, str2) {
var doc = document.getElementById('target');
var pre = document.createElement('span');
var el = document.createElement('span');
var br = document.createElement('br');
pre.innerHTML = str1;
pre.style.color = "black";
el.innerHTML = str2;
el.style.color = "blue";
doc.appendChild(pre);
doc.appendChild(el);
doc.appendChild(br);
}
function number(num) {
var ab = new ArrayBuffer(8);
var dv = new DataView(ab);
var abInt8 = new Int8Array(ab, 0, 8);
var abInt16 = new Int16Array(ab, 0, 4);
var abInt32 = new Int32Array(ab, 0, 2);
var abUint8 = new Uint8Array(ab, 0, 8);
var abUint16 = new Uint16Array(ab, 0, 4);
var abUint32 = new Uint32Array(ab, 0, 2);
var abF32 = new Float32Array(ab, 0, 2);
var abF64 = new Float64Array(ab, 0, 1);
write("Set first element of Float64 view = to number: ","");
abF64[0]=num;
var dump = "";
for (var i = 0; i < abInt8.length; i++)
dump += "[" + abInt8[i] + "]";
write("Int8: ", dump);
dump = "";
for (var i = 0; i < abInt16.length; i++)
dump += "[" + abInt16[i] + "]";
write("Int16: ", dump);
dump = "";
for (var i = 0; i < abInt32.length; i++)
dump += "[" + abInt32[i] + "]";
write("Int32: ", dump);
var dump = "";
for (var i = 0; i < abUint8.length; i++)
dump += "[" + abUint8[i] + "]";
write("Uint8: ", dump);
dump = "";
for (var i = 0; i < abUint16.length; i++)
dump += "[" + abUint16[i] + "]";
write("Uint16: ", dump);
dump = "";
for (var i = 0; i < abUint32.length; i++)
dump += "[" + abUint32[i] + "]";
write("Uint32: ", dump);
dump = "";
for (var i = 0; i < abF32.length; i++)
dump += "[" + abF32[i] + "]";
write("Float32: ", dump);
dump = "";
for (var i = 0; i < abF64.length; i++)
dump += "[" + abF64[i] + "]";
write("Float64: ", dump);
var dv = new DataView(ab);
...