window.addEventListener("load",async ()=> {
var info = document.createElement("div");
info.innerHTML="both
test A: (new TextEncoder()).encode(str) and
test B: new Blob([str])
will block the UI thread equally
"
info.style.color="blue";
document.body.appendChild(info);
var div = document.createElement("div");
var acount=0;
var bcount=0;
var end;
var secs=10;
var done=false
document.body.appendChild(div);
(function info(){
div.innerHTML="end in "+(end - Date.now())
+"
acount="+acount
+"
bcount="+bcount;
if(!done)
setTimeout(info,100);
})();
function wait(ms=100){
return new Promise((resolve)=>{
setTimeout(resolve,ms);
});
}
await (()=>{return new Promise((resolve)=>{console.log('start promise');setTimeout(resolve,100);});})();
var a = (new Array(20000000)).join(".");
const enc = new TextEncoder();
var ab;
console.log("start test a");
end = Date.now() + secs * 1000;
while(Date.now()