[Edit]
+
0
-
0

JavaScript - convert Blob object to Uint8Array object (to bytes array)

1241
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
// Note: presented solution works in the older web browsers also. const toArray = async (blob) => { if (blob.arrayBuffer) { return new Uint8Array(await blob.arrayBuffer()); } return new Promise((resolve, reject) => { const reader = new FileReader(); reader.onload = () => { resolve(new Uint8Array(reader.result)) }; reader.onerror = () => { reject(); }; reader.readAsArrayBuffer(blob); }); }; // Usage example (in async logic): const blob = ...; // Blob object const array = await toArray(blob); // Uint8Array object console.log(`array.length=${array.length}`); console.log(`array[0]=${array[0]}`); console.log(`array[1]=${array[1]}`); console.log(`array[2]=${array[2]}`); console.log(`...`); // See also: // 1. https://dirask.com/snippets/JavaScript-convert-Blob-object-to-Int8Array-object-to-bytes-array-jMXbdp