HTML5 Web Workers. Reutilizare Web Worker. Web workers și DOM.

Reutilizați Web Worker

Dacă setați variabila lucrător (worker) pe nedeterminată, după terminarea acesteia, puteți refolosi codul:
 
w = undefined;

Exemplu complet de lucrător web (web worker)

Am văzut deja codul Worker în fișierul .js. Mai jos este codul pentru pagina HTML:

Exemplu:
<!DOCTYPE html>
<html>
<body>

<p>Numără numere: <output id="result"></output></p>
<button onclick="startWorker()">Start Worker</button>
<button onclick="stopWorker()">Stop Worker</button>

<script>
var w;

function startWorker() {
  if (typeof(Worker) !== "undefined") {
    if (typeof(w) == "undefined") {
      w = new Worker("demo_workers.js");
    }
    w.onmessage = function(event) {
      document.getElementById("result").innerHTML = event.data;
    };
  } else {
    document.getElementById("result").innerHTML = "Ne pare rău! Nu există suport pentru Web Worker.";
  }
}

function stopWorker() {
  w.terminate();
  w = undefined;
}
</script>

</body>
</html>

Lucrătorii Web (web workers) și DOM

Întrucât lucrătorii web (web workers) se află în fișiere externe, aceștia nu au acces la următoarele obiecte JavaScript:
 
  • Obiectul ferestrei
  • Obiectul documentului
  • Obiectul părinte
\r\n\r\n\r\n\r\n\r\nLucrătorii Web (web workers) și DOM\r\n\r\nÎntrucât lucrătorii web (web workers) se află în fișiere externe, aceștia nu au acces la următoarele obiecte JavaScript:\r\n \r\n\r\n\tObiectul ferestrei\r\n\tObiectul documentului\r\n\tObiectul părinte\r\n\r\n","educationalLevel":"High School","learningResourceType":"theory","typicalAgeRange":"14-19","inLanguage":"ro","isAccessibleForFree":true,"datePublished":"2019-11-04T13:20:00+00:00","dateModified":"2026-05-11T21:46:22+00:00","author":{"@type":"EducationalOrganization","name":"Lecții Virtuale","url":"https://staging.lectii-virtuale.ro"},"publisher":{"@type":"EducationalOrganization","name":"Lecții Virtuale","url":"https://staging.lectii-virtuale.ro"},"educationalAlignment":{"@type":"AlignmentObject","alignmentType":"educationalSubject","targetName":"Tehnologii Web"}}