JSFiddle - React, Tailwind, and code Playground
JavaScript
function ab2str(buf) {
return String.fromCharCode.apply(null, new Uint16Array(buf));
}
function str2ab(str) {
var buf = new ArrayBuffer(str.length*2); // 2 bytes for each char
var bufView = new Uint16Array(buf);
for (var i=0, strLen=str.length; i<strLen; i++) {
bufView[i] = str.charCodeAt(i);
}
return buf;
}
var string = 'abcαβɣ';
var blob = new Blob([str2ab(string)]);
var reader = new FileReader();
reader.addEventListener("loadend", function() {
console.log('result', ab2str(reader.result));
});
reader.readAsArrayBuffer(blob);
console.log(string, blob);