var sampleBytes = new Int8Array(4096); var saveByteArray = (function () { var a = document.createElement("a"); document.body.appendChild(a); a.style = "display: none"; return function (data, name) { var blob = new Blob(data, {type: "octet/stream"}), url = window.URL.createObjectURL(blob); a.href = url; a.download = name; a.click(); window.URL.revokeObjectURL(url); }; }()); saveByteArray([sampleBytes], 'example.txt');
var objData = { str: "string", ab: new ArrayBuffer(100), i8: new Int8Array(200) }; objWorker.postMessage(objData, [objData.ab, objData.i8.buffer]);
var array = new Int8Array([17, -45.3]); try{ var jpeg = new Blob( [array], {type : "image/jpeg"}); } catch(e){ // TypeError old chrome and FF window.BlobBuilder = window.BlobBuilder || window.WebKitBlobBuilder || window.MozBlobBuilder || window.MSBlobBuilder; if(e.name == 'TypeError' && window.BlobBuilder){ var bb = new BlobBuilder(); bb.append(array.buffer); var jpeg = bb.getBlob("image/jpeg"); } else if(e.name == "InvalidStateError"){ // InvalidStateError (tested on FF13 WinXP) var jpeg = new Blob( [array.buffer], {type : "image/jpeg"}); } else{ // We're screwed, blob constructor unsupported entirely } }
var a = Object.keys(new Int8Array(6)).map(Number).slice(1)
var byCallData = new Int8Array(1); byCallData[0] = 0x2;
var x = new Int8Array(100) # x now is filled with 0s and is of size 100
// Create a byte view and underlying buffer var a8 = new Int8Array(10); // Create a word view of the byte view's buffer var a16 = new Int16Array(a8.buffer, 2, 2); // Set a couple of words a16[0] = 0x1221; a16[1] = 0x2442; // Show the contents of the byte array var i; for (i = 0; i < a8.length; ++i) { console.log("0x" + a8[i].toString(16)); }
new Int8Array(new Buffer([100, 200, 255, 1, 32]));
var signed8bitArray = new Int8Array(1); var unsigned8bitArray = new Uint8Array(1); unsigned8bitArray[0] = 254; signed8bitArray[0] = unsigned8bitArray[0]; signed8bitArray[0] == -2 // This is true
var objData = { str: "string", ab: new ArrayBuffer(100), i8: new Int8Array(200) }; objWorker.postMessage(objData, [objData.ab, objData.i8.buffer]); On other side: self.onmessage = function(objEvent) { var strText = objEvent.data.str; var objTypedArray = objEvent.data.ab; var objTypedArrayView = objEvent.data.i8; }
let t01 = new Uint8Array([1, 2, 3, 4]); let t02 = new Int8Array([1, 2, 3, 4]); let t03 = new Uint8Array([1, 2, 3, 4]); let t04 = new Uint8ClampedArray([1, 2, 3, 4]); let t05 = new Int16Array([1, 2, 3, 4]); let t06 = new Uint16Array([1, 2, 3, 4]); let t07 = new Int32Array([1, 2, 3, 4]); let t08 = new Uint32Array([1, 2, 3, 4]); let t09 = new Float32Array([1.5, 2.5, 3.5, 4.5]); let t10 = new Float64Array([1.5, 2.5, 3.5, 4.5]); let arrayBuffer = new ArrayBuffer(16);
private static Object toTypedArray(final V8Array typedArray) { int arrayType = typedArray.getType(); ByteBuffer buffer = ((V8TypedArray) typedArray).getByteBuffer(); switch (arrayType) { case V8Value.INT_8_ARRAY: return new Int8Array(buffer); case V8Value.UNSIGNED_INT_8_ARRAY: return new UInt8Array(buffer); case V8Value.UNSIGNED_INT_8_CLAMPED_ARRAY: return new UInt8ClampedArray(buffer); case V8Value.INT_16_ARRAY: return new Int16Array(buffer); case V8Value.UNSIGNED_INT_16_ARRAY: return new UInt16Array(buffer); case V8Value.INT_32_ARRAY: return new Int32Array(buffer); case V8Value.UNSIGNED_INT_32_ARRAY: return new UInt32Array(buffer); case V8Value.FLOAT_32_ARRAY: return new Float32Array(buffer); case V8Value.FLOAT_64_ARRAY: return new Float64Array(buffer); default: throw new IllegalStateException("Known Typed Array type: " + V8Value.getStringRepresentaion(arrayType)); } }
private static Object toTypedArray(final V8Array typedArray) { int arrayType = typedArray.getType(); ByteBuffer buffer = ((V8TypedArray) typedArray).getByteBuffer(); switch (arrayType) { case V8Value.INT_8_ARRAY: return new Int8Array(buffer); case V8Value.UNSIGNED_INT_8_ARRAY: return new UInt8Array(buffer); case V8Value.UNSIGNED_INT_8_CLAMPED_ARRAY: return new UInt8ClampedArray(buffer); case V8Value.INT_16_ARRAY: return new Int16Array(buffer); case V8Value.UNSIGNED_INT_16_ARRAY: return new UInt16Array(buffer); case V8Value.INT_32_ARRAY: return new Int32Array(buffer); case V8Value.UNSIGNED_INT_32_ARRAY: return new UInt32Array(buffer); case V8Value.FLOAT_32_ARRAY: return new Float32Array(buffer); case V8Value.FLOAT_64_ARRAY: return new Float64Array(buffer); default: throw new IllegalStateException("Known Typed Array type: " + V8Value.getStringRepresentaion(arrayType)); } }