SharedWorke

by Maksim Kalenich

HTML

<script src="https://cdn.jsdelivr.net/gh/eu81273/jsfiddle-console/console.js"></script>
<script type="javascript/worker">
	onmessage = function(e) {
		postMessage(`Result: ${e.data[0] * e.data[1]}`);
	}
</script>

JavaScript

function BlobWorker() {
	console.log("Hello");
  let js = document.querySelector('[type="javascript/worker"]').textContent;
  let blob = new Blob([js], {
    "type": "text/plain"
  });
  return URL.createObjectURL(blob);
}

if (!!window.SharedWorker) {
	let source = BlobWorker();
  let worker = new window.Worker(source);
  worker.onmessage = (e) => {
		console.log("Heloo");
    console.log(e.data, e.lastEventId);
  };
  worker.postMessage([3, 5]);
  console.log("Message posted to worker");
}