Léisung: setInterval kann net normalerweis am Hannergrond vum Browser lafen.

Referenz

Worker

Wat ass "Web Worker"

"Web Worker" bitt en einfachen Wee fir Webinhalter fir Skripter an engem Hannergrondfuedem auszeféieren. Threads kënnen Aufgaben ausféieren ouni d'Benotzerinterface ze stéieren. Zousätzlech kënnen se I / O mat XMLHttpRequest maachen. Nodeems en erstallt gouf, kann en Aarbechter eng Noriicht an de JavaScript Code schécken deen en erstallt huet, andeems en de Message un den Event Handler verëffentlecht deen de Code spezifizéiert (a vice versa).

Instruktiounen

Am Beispillcode hei ënnen implementéiere mir den einfachsten Timer a loossen en all 100 Millisekonnen ausléisen.

            var timmer = new Worker(
    URL.createObjectURL(
        new Blob(
            [
                "onmessage=function(event){setInterval(function(){postMessage(1);},100)}",
            ],
            { type: "application/javascript" }
        )
    )
);
timmer.onmessage = function (event) {
    console.log("get message");
};
timmer.postMessage("start");
        

Standard Benotzung

Am Beispill hei uewen hu mir eng Adress erstallt mat createObjectURL. Well de Code dee mir ausféieren relativ einfach ass, wäert dës Method méi präzis sinn. Wann de Code an der Aufgab, déi mir ausféieren, méi komplizéiert ass, kënne mir d'Aufgab separat als onofhängeg js Datei schreiwen. Fir Detailer fannt Dir op de folgende Code. Et gi méi detailléiert Aféierung, Dir kënnt op d'Referenzmaterialien uewen am Artikel referéieren.

            var timmer = new Worker('worker.js');