Inleiding tot hoe JavaScript werkt?

JavaScript is een scripttaal die in de browser wordt gebruikt voor interface-interactie. Brendan Eich was de eerste persoon die een JavaScript-engine maakte voor de Netspace Navigator-webbrowser op Netspace. Het is geïmplementeerd in C en de codenaam was SpiderMonkey. Mocha was de naam die aanvankelijk aan het project werd gegeven, vervolgens hernoemd naar LiveScript en uiteindelijk toen Netspace en Sun een licentieovereenkomst aangingen, werd het opnieuw hernoemd naar JavaScript. In dit onderwerp gaan we leren hoe JavaScript werkt. We moeten wel gehoord hebben van populaire motoren zoals V8, Spider Monkey en er zijn er nog veel meer. Verschillende motoren hebben verschillende "codenamen", bijvoorbeeld:

  • V8 - motor gebruikt in Opera & Chrome.
  • SpiderMonkey - engine gebruikt in Firefox.
  • Trident, Chakra - motor gebruikt in IE & Nitro.
  • ChakraCore - motor gebruikt in Microsoft Edge.
  • SquirrelFish - motor gebruikt in Safari.

De motor die wordt gebruikt voor JavaScript bestaat uit twee hoofdcomponenten:

  • Heap-geheugen - hier vindt de toewijzing van geheugen plaats.
  • Call Stack - dit is de plaats waar de stacks worden aangeroepen en de code wordt uitgevoerd.

NOTITIE:

JavaScript, een single-threaded programmeertaal, wat betekent dat het een enkele Call Stack heeft en dus de mogelijkheid heeft om één ding tegelijk te doen. De Call Stack is in feite een gegevensstructuur die het punt in het programma vastlegt dat daadwerkelijk wordt uitgevoerd. Deze call-stack is vergelijkbaar met andere stack met de basisfunctionaliteit, zoals, als we in een functie stappen, we deze bovenop de stack plaatsen. We moeten de bovenkant van de stapel verwijderen als we willen terugkeren van een functie. Dit is de basisfunctionaliteit van elke stapel. Terwijl we het hebben over de motoren die de JavaScript-functies aansturen zijn echt ingewikkeld, maar de basisdingen die elke motor in bredere zin uitvoert, zijn als volgt:

  • Als de browser het script leest, is de engine ingebed in de browser zelf.
  • Na het lezen van het script converteert ("compileert") het script naar de machinetaal.
  • En dan draait de machinecode behoorlijk snel.

Wat kan JavaScript in de browser doen?

  • Het wijzigt de bestaande inhoud, wijzigt stijlen door nieuwe HTML aan de pagina's toe te voegen.
  • Biedt functies zoals een muisklik, muisaanwijzer, enz. Die reageert op de acties van het gebruik.
  • Verzend en ontvang aanvragen via het netwerk naar externe servers, zonder de volledige pagina te laden terwijl de gebruiker invoert. Een dergelijke technologie die zeer beroemd is, is AJAX.
  • Met JavaScript kan men de waarden van cookies instellen en ophalen, berichten aan de gebruikers verstrekken voor informatie, waarschuwingen en andere doeleinden.
  • Kan ook tijdelijke gegevens aan clientzijde opslaan.

Wat kan JavaScript in de browser NIET doen?

JavaScript's mogelijkheden zijn enigszins beperkt in de browser zijn beperkt omwille van de veiligheid van de gebruiker. Het doel is om te voorkomen dat een webpagina van derden toegang heeft tot privé-informatie of de gebruikersgegevens schaadt. Enkele scenario's voor dit soort beperkte toegang zijn:

  • JavaScript op een webpagina is standaard beperkt tot het lezen / schrijven van willekeurige bestanden op de harde schijf, kopiëren of uitvoeren van programma's. Het heeft zelfs geen directe toegang tot OS-systeemfuncties. Er zijn maar weinig moderne browsers die het mogelijk maken om met bestanden te werken, maar om dezelfde reden is de toegang beperkt en alleen mogelijk als de gebruiker bepaalde acties uitvoert, zoals een bestand in een browservenster "neerzetten". Sommige manieren zijn ook beschikbaar om te communiceren met camera / microfoon en andere apparaten, maar dat vereist ook expliciete toestemming van de gebruiker. Een JavaScript-pagina kan dus niet in het geheim een ​​webcamera inschakelen of de informatie naar de externe server of een derde sturen.
  • Verschillende tabbladen of vensters zijn over het algemeen niet op de hoogte van elkaars instanties. Maar technisch is dat heel goed mogelijk. Hetzelfde wordt "Same Origin Policy" genoemd. Om hetzelfde te laten werken, moeten beide instanties een speciale JavaScript-code bevatten die gegevensuitwisseling tussen elkaar aankan. Maar de beperking is er weer voor de veiligheid van de gebruiker. Een webpagina van URL abc.com die een gebruiker heeft geopend, mag bijvoorbeeld geen toegang hebben tot een ander browsertabblad met de URL xyz.com en in het geheim informatie stelen.
  • Met behulp van JavaScript kan men eenvoudig via het internet communiceren met elke externe server of derde partij waar de huidige pagina vandaan kwam. Maar om veiligheidsredenen is de mogelijkheid om gegevens van andere sites of domeinen te ontvangen of verzenden uitgeschakeld. Maar hetzelfde is nog steeds mogelijk, waarvoor sommige JavaScript-werken expliciete toestemming van de externe zijde vereisen. Een dergelijke beperking is niet mogelijk als JavaScript buiten de browser wordt gebruikt in plaats van binnen, dat wil zeggen vanaf een server. Het zal je ook opvallen dat sommige van de moderne browsers het installeren van plug-ins of extensies waarmee JavaScript werkt gebruikt in de browser, uitgebreide machtigingen toestaan.

Wat maakt JavaScript uniek?

  • Zoals we allemaal weten, is het een objectgebaseerde scripttaal.
  • Het is geschreven in C. Het is een geïnterpreteerde taal.
  • Pure JavaScript heeft sneller toegang tot DOM.
  • Met het gebruik van JavaScript-werk krijgt de gebruiker meer controle over de browser.
  • Het kan ook datum en tijdstempel verwerken.
  • Het kan ook de browser van de gebruiker en zelfs het besturingssysteem detecteren.
  • Het is licht van gewicht.
  • Het is een scripttaal zoals reeds vermeld.
  • Het is een op tolk gebaseerde scripttaal.
  • Het is hoofdlettergevoelig, dwz de syntaxis is hoofdlettergevoelig.
  • Het is objectgebaseerde taal omdat het vooraf gedefinieerde objecten zoals Java biedt, maar het is geen Java.
  • Elke instructie in JavaScript moet worden afgesloten met een puntkomma (;).
  • Het belangrijkste dat JavaScript biedt, is de mogelijkheid om nieuwe functies in scripts te maken. Men kan een functie in JavaScript declareren met behulp van de functie
  • Volledige ondersteuning voor HTML en CSS.
  • Het is heel gemakkelijk te gebruiken.
  • Ondersteunt voor alle browsers.

Beperkingen van JavaScript-werk

Onder de vele voordelen heeft JavaScript ook enkele beperkingen die hieronder worden gegeven:

  • JavaScript bevindt zich aan de clientzijde en biedt niet de mogelijkheid om bestanden op schijf te lezen of te schrijven.
  • JavaScript kan niet worden gebruikt voor netwerktoepassingen omdat het dergelijke ondersteuning niet biedt.
  • Het biedt geen functionaliteit zoals multithreading of multiprocessor.

Conclusie

Dus daarmee kwamen we allemaal te weten dat over wat basisinformatie over de evoluties van JavaScript werkt, enkele van de beroemde motoren die JavaScript op webbrowsers draaien, wat de voordelen zijn van JavaScript in de browsers te houden en wat er zou kunnen gebeuren als JavaScript zou kunnen worden geplaatst en uitgevoerd buiten de browsers. We zijn ook enkele functies van JavaScript-werk tegengekomen die het bruikbaar en uniek hebben gemaakt, samen met enkele van de beperkingen / nadelen van JavaScript. Dus hiermee sluit ik het onderwerp af over hoe JavaScript werkt, er zijn nog veel meer dingen die je via internet kunt verkennen.

Aanbevolen artikelen

Dit is een gids voor JavaScript-werk geweest. Hier hebben we de basisconcepten, beperkingen en wat Javascript uniek maakt van anderen besproken. U kunt ook de volgende artikelen bekijken voor meer informatie:

  1. Cheatsheet JavaScript
  2. Gebruik van JavaScript
  3. JavaScript versus JScript
  4. C # versus JavaScript
  5. Wiskundige functies in JavaScript
  6. Navigator in JavaScript | Eigenschappen, methoden (voorbeelden)