Cauta rapid aici ↑

Obiectul Worker

Obiectul Worker este foarte util frontend developerilor sau celor care adora sa programeze in JavaScript si asta pentru ca acest obiect ne permite noua sa rulam un fisier de pe server in fundal si care contine limbaj JavaScript. Browser-ul va incarca fisierul de pe server si il va rula in fundal iar rezultatul va fi afisat in pagina web in locul ales de catre noi. Avantajele acestui obiect sunt legate de viteza cu care se va incarca pagina web si asta pentru ca nu va intarzia incarcarea limbajelor HTML si CSS daca am fi adaugat script-ul nostru oriunde in pagina web plus ca iti organizezi mai bine limbajele. Pe aceasta tema mai este de vorbit.

Odata cu cresterea vitezei prin rularea separat de pagina web a script-ului nostru din fisier putem face ca aplicatiile noastre sa devina mult mai complexe si mult mai folositoare. Din moment ce acest obiect Worker ne permite sa rulam acest fisier in fundal, acum este momentul sa va spun si dezavantajele. Script-ul JavaScript din fisierul extern NU va putea interactiona cu obiectul window si nu va putea afecta structura DOM-ului.

In exemplu urmator voi creea un folder ce va contine un document HTML ce va incarca in fundal un fisier extern ce contine o functie JavaScript de afisare a datei si orei.

Observati in exemplul de mai sus ca variabila worker ce contine obiectul Worker are intre paranteze calea relativa catre fisierul JavaScript extern iar acesta se afla in acelasi director (folder). Pe urmatoarea linie de cod vom declara din nou variabila worker si de aceasta data ii vom atasa evenimentul message pe care vom rula o functie de afisare a ceea ce primim de la fisierul extern JavaScript. Observati ca functia are un parametru, parametru de care vom lega proprietatea data care contine informatiile primite de la fisierul extern.

In fisierul extern JavaScript am creeat o functie care ne va afisa data calendaristica si ora cu minute si secunde pe care le-am impachetat frumos in variabila arata. In interiorul functiei se observa metoda postMessage() ce va avea ca parametru variabila arata. Aceasta metoda are ca rol trimiterea, postarea mesajului din acest fisier si cum singurul parametru este reprezentat de variabila arata, atunci acestea sunt datele, mesajul trimis. Un alt aspect foarte important este sa aveti un server instalat si sa rulati acest exemplu pe server, in caz contrar NU va functiona si asta pentru ca browser-ul trebuie sa primeasca informatia de la server si in acel moment este declansat evenimentul message, eveniment cu care inseram datele in pagina web.