Introducere la modul în care funcționează JavaScript?
JavaScript este un limbaj de scripting care este utilizat în cadrul browserului pentru interacțiunea cu interfața. Brendan Eich a fost prima persoană care a creat motorul JavaScript a fost pentru browserul web Netspace Navigator la Netspace. Acesta este implementat în C, iar numele său de cod era SpiderMonkey. Mocha a fost numele dat inițial proiectului, apoi a fost redenumit în LiveScript și, în cele din urmă, când Netspace și Sun au încheiat un acord de licență, a fost redenumit din nou în JavaScript. În acest subiect, vom învăța despre cum funcționează JavaScript. Probabil că am auzit despre motoare populare precum V8, Spider Monkey și mai sunt multe altele. Diferite motoare au “nume de cod” diferite, de exemplu:
- V8 – motor utilizat în Opera & Chrome.
- SpiderMonkey – motor utilizat în Firefox.
- Trident, Chakra – motor utilizat în IE & Nitro.
- ChakraCore – motor utilizat în Microsoft Edge.
- SquirrelFish – motor utilizat în Safari.
Motorul folosit pentru javascript este format din două componente principale:
Începeți cursul gratuit de dezvoltare software
Dezvoltare web, limbaje de programare, testare software & altele
- Memorie heap- aici are loc alocarea de memorie.
- Call Stack – acesta este locul în care stivele sunt apelate și codul se execută.
NOTA:
JavaScript, un limbaj de programare cu un singur fir, ceea ce înseamnă că are o singură Call Stack și, astfel, are capacitatea de a face un singur lucru la un moment dat. Call Stack-ul este practic o structură de date care înregistrează punctul din program care se execută efectiv. Această stivă de apeluri este similară cu alte stive care au funcționalitatea de bază, cum ar fi: dacă intrăm într-o funcție, o punem în partea de sus a stivei. Trebuie să ieșim din partea de sus a stivei dacă dorim să ne întoarcem dintr-o funcție. Aceasta este funcționalitatea de bază a oricărei stive. Pe măsură ce discutăm despre motoarele care acționează funcțiile JavaScript sunt foarte complicate, dar lucrurile de bază pe care fiecare motor le realizează în sens larg sunt următoarele:
- Dacă browserul citește scriptul, atunci motorul este încorporat în browserul însuși.
- După ce citește scriptul, acesta convertește (“compilează”) scriptul în limbajul mașinii.
- Și apoi codul mașinii rulează, destul de repede.
Ce pot face lucrările JavaScript în browser?
- Se schimbă conținutul existent, modifică stilurile adăugând HTML nou în pagini.
- Furnizează funcții cum ar fi click-ul mouse-ului, mouse hover, etc. care reacționează la acțiunile de utilizare.
- Întocmește și primește cereri prin rețea către serverele de la distanță, fără a încărca pagina completă după cum intră utilizatorul. O astfel de tehnologie care este foarte cunoscută este AJAX.
- Cu ajutorul acesteia se pot seta și obține valorile cookie-urilor, se pot furniza mesaje utilizatorilor pentru informare, alertă și alte scopuri.
- De asemenea, se pot stoca date temporare pe partea clientului.
Ce nu pot face lucrările JavaScript în browser?
Capacitățile JavaScript sunt oarecum limitate în cadrul browserului sunt limitate de dragul siguranței utilizatorului. Scopul este de a împiedica o pagină web terță să acceseze informații private sau să dăuneze datelor utilizatorului. Câteva scenarii pentru acest tip de acces limitat sunt:
- În mod implicit, JavaScript de pe o pagină web este restricționat să citească/scrie fișiere arbitrare pe hard disk, să le copieze sau să execute programe. Nici măcar nu are acces direct la funcțiile sistemului de operare. Puține browsere moderne îi permit, de asemenea, să lucreze cu fișiere, dar, în cazul acestora, accesul este limitat și este oferit numai dacă utilizatorul face anumite acțiuni, cum ar fi “plasarea” unui fișier în fereastra unui browser. Unele modalități sunt disponibile și pentru a interacționa cu camera/microfonul și cu alte dispozitive, dar și acestea necesită permisiunea explicită a utilizatorului. Astfel, o pagină cu JavaScript activat nu poate activa în secret o cameră web sau poate trimite informațiile către serverul de la distanță sau către o terță parte.
- Diferitele file sau ferestre nu știu, în general, despre celelalte instanțe. Dar din punct de vedere tehnic acest lucru este foarte posibil. Același lucru se numește “Politica aceleiași origini”. Pentru ca același lucru să funcționeze, ambele instanțe trebuie să conțină un cod JavaScript special care poate gestiona schimbul de date între ele. Dar limitarea există din nou pentru siguranța utilizatorului. De exemplu, o pagină web de la URL abc.com pe care un utilizator a deschis-o nu trebuie să poată accesa o altă filă de browser cu URL-ul xyz.com și să fure informații în secret.
- Cu ajutorul acesteia, se poate comunica cu ușurință pe net cu orice server la distanță sau cu o terță parte de unde provine pagina curentă. Dar, din motive de securitate, capacitatea sa de a primi sau trimite date de pe alte site-uri sau domenii este dezactivată. Dar același lucru este încă posibil, pentru care unele lucrări JavaScript necesită un acord explicit din partea părții aflate la distanță. O astfel de limitare nu va putea fi oferită, dacă JavaScript ar fi utilizat în afara browserului și nu în interiorul acestuia, adică fie de la un server. Puteți observa, de asemenea, că unele dintre browserele moderne permit instalarea de plugin-uri sau extensii prin care lucrările JavaScript utilizate în interiorul browserului primesc permisiuni extinse.
Ce face ca lucrările JavaScript să fie unice?
- După cum știm cu toții, este un limbaj de scripting bazat pe obiecte.
- Este scris în C. Este un limbaj interpretat.
- JavaScript pur este mai rapid în accesarea DOM.
- Cu ajutorul lucrării JavaScript, utilizatorul obține un control mai mare asupra browserului.
- De asemenea, poate gestiona data și timestamp.
- De asemenea, poate detecta browserul și chiar sistemul de operare al utilizatorului.
- Este ușor.
- Este un limbaj de scripting, așa cum s-a spus deja.
- Este un limbaj de scripting bazat pe interpretor.
- Este sensibil la majuscule și minuscule, adică sintaxa este sensibilă la majuscule și minuscule.
- Este un limbaj bazat pe obiecte, deoarece oferă obiecte predefinite ca și Java, dar nu este java.
- Care și fiecare instrucțiune din JavaScript trebuie să se termine cu punct și virgulă (;).
- Cel mai important lucru pe care îl oferă JavaScript este capacitatea de a crea noi funcții în cadrul scripturilor. Se poate declara o funcție în JavaScript folosind funcția
- Suport complet pentru HTML și CSS.
- Este foarte ușor de utilizat.
- Suport pentru toate browserele.
Limitări
Printre numeroasele avantaje, JavaScript are și unele limitări care sunt prezentate mai jos:
- JavaScript este pe partea clientului și nu oferă posibilitatea de a citi sau scrie fișiere pe disc.
- JavaScript nu poate fi folosit pentru aplicații de rețea deoarece nu oferă un astfel de suport.
- Nu oferă nicio funcționalitate cum ar fi multithreading sau multiprocesor.
Concluzie
Atunci, cu toții am ajuns să știm că despre unele informații de bază despre evoluțiile lucrărilor JavaScript, unele dintre motoarele celebre care rulează JavaScript pe browsere web, care sunt avantajele menținerii JavaScript în interiorul browserelor și ce s-ar putea întâmpla dacă JavaScript ar putea fi plasat și rulat în afara browserelor. Am întâlnit, de asemenea, unele dintre caracteristicile muncii JavaScript care au făcut-o utilizabilă și unică, împreună cu unele dintre limitările/dezavantajele acesteia. Deci, cu asta, închei subiectul despre cum funcționează JavaScript, există multe alte lucruri de explorat pe care le puteți explora de pe web.
Articole recomandate
Acesta a fost un ghid pentru funcționarea JavaScript. Aici am discutat conceptele de bază, limitările și ceea ce face ca javascript să fie unic față de ceilalți. Puteți, de asemenea, să vă uitați la următoarele articole pentru a afla mai multe –
- Cheat Sheet JavaScript
- Utilizări ale JavaScript
- JavaScript vs JScript
- C# vs JavaScript
.