Biznes: setInterval brauzerning fonida normal ishlamaydi.

Malumot

Worker

"Web Worker" nima?

"Web Worker" veb-kontent uchun skriptlarni fonda ishlashning oddiy usulini taqdim etadi. Mavzular foydalanuvchi interfeysini bezovta qilmasdan vazifalarni bajarishi mumkin. Bundan tashqari, ular XMLHttpRequest yordamida I / U ni amalga oshirishi mumkin. Yaratgandan so'ng, ishchi xabarni uni yaratgan JavaScript kodiga yuborishi mumkin, xabarni kod bilan belgilangan voqea ishlovchisiga yuborishi mumkin (va aksincha).

Ko'rsatmalar

Quyidagi namunaviy kodda biz eng oddiy taymerni qo'llaymiz va uni har 100 millisekundada ishga tushirishga ruxsat beramiz.

            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");
        

Standart foydalanish

Yuqoridagi misolda biz CreateObjectURL-dan foydalanib manzil yaratdik.Biz bajaradigan kod nisbatan sodda bo'lgani uchun bu usul yanada ixchamroq bo'ladi. Biz bajarishimiz kerak bo'lgan vazifadagi kod yanada murakkablashganda, biz mustaqil js fayli sifatida vazifani alohida yozishimiz mumkin. Tafsilotlar uchun quyidagi kodga murojaat qiling. Batafsil tanishtirishlar mavjud, siz maqolaning yuqori qismidagi ma'lumotnomalarga murojaat qilishingiz mumkin.

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