Hvordan JavaScript fungerer?

Hvordan JavaScript fungerer

Hvordan JavaScript fungerer

Indledning til Hvordan JavaScript fungerer?

JavaScript er et scriptsprog, der bruges i browseren til interaktion med grænseflader. Brendan Eich var den første person til at skabe JavaScript-motor var til Netspace Navigator-webbrowseren hos Netspace. Den er implementeret i C, og dens kodenavn var SpiderMonkey. Mocha var det navn, som projektet oprindeligt fik, hvorefter det blev omdøbt til LiveScript og til sidst, da Netspace og Sun indgik en licensaftale, blev det igen omdøbt til JavaScript. I dette emne skal vi lære om, hvordan javascript fungerer. Vi har sikkert hørt om populære motorer som V8, Spider Monkey og der er mange andre. Forskellige motorer har forskellige “kodenavne”, f.eks.:

  • V8 – motor, der bruges i Opera & Chrome.
  • SpiderMonkey – motor, der bruges i Firefox.
  • Trident, Chakra – motor, der bruges i IE & Nitro.
  • ChakraCore – motor, der bruges i Microsoft Edge.
  • SquirrelFish – motor, der bruges i Safari.

Motoren, der bruges til javascript, består af to hovedkomponenter:

Start dit gratis kursus i softwareudvikling

Webudvikling, programmeringssprog, softwaretestning & andre

  • Heap-hukommelse – det er her, allokeringen af hukommelse sker.
  • Call Stack – dette er det sted, hvor stakken bliver kaldt, og koden udføres.

NOTAT:

JavaScript, et single-threaded programmeringssprog, hvilket betyder, at det har en enkelt Call Stack, og dermed har det mulighed for at gøre en ting ad gangen. Call Stack er dybest set en datastruktur, der registrerer det punkt i programmet, som faktisk er ved at blive udført. Denne call stack svarer til andre stakke med den grundlæggende funktionalitet som f.eks. at hvis vi går ind i en funktion, placerer vi den øverst på stakken. Vi er nødt til at fjerne toppen af stakken, hvis vi ønsker at vende tilbage fra en funktion. Dette er den grundlæggende funktionalitet for alle stakke. Som vi diskuterer de motorer, der driver JavaScript-funktionerne, er virkelig komplicerede, men de grundlæggende ting, som enhver motor udfører i bred forstand, er følgende:

  • Hvis browseren læser scriptet, så er motoren indlejret i selve browseren.
  • Når den har læst scriptet, konverterer (“kompilerer”) den scriptet til maskinsprog.
  • Og så kører maskinkoden, ret hurtigt.

Hvad kan JavaScript-værker i browseren gøre?

  • Det ændrer det eksisterende indhold, ændrer stilarter ved at tilføje ny HTML til siderne.
  • Giver funktioner som museklik, mouse hover osv. som reagerer på brugerens handlinger.
  • Sender og modtager anmodninger over nettet til fjernservere, uden at indlæse hele siden, som brugeren indtaster. En sådan teknologi, som er meget berømt, er AJAX.
  • Med denne kan man indstille og få værdierne for cookies, giver meddelelser til brugerne til information, advarsler og andre formål.
  • Så kan man også gemme midlertidige data på klientsiden.

Hvad KAN JavaScript-værker i browseren ikke gøre?

JavaScript’s evner er noget begrænset inden for browseren er begrænset af hensyn til brugerens sikkerhed. Formålet er at forhindre, at en tredjepartswebside får adgang til private oplysninger eller skader brugerens data. Nogle scenarier for denne form for begrænset adgang er:

  • Som standard er JavaScript på en webside begrænset til at læse/skrive vilkårlige filer på harddisken, kopiere dem eller eksekvere programmer. Det har endda ingen direkte adgang til OS-systemfunktioner. Nogle få moderne browsere giver også mulighed for at arbejde med filer, men adgangen er begrænset og gives kun, hvis brugeren foretager visse handlinger, f.eks. at “slippe” en fil ind i et browservindue. Nogle af metoderne er også tilgængelige til at interagere med kamera/mikrofon og andre enheder, men det kræver også brugerens udtrykkelige tilladelse. Så en side med JavaScript-aktivering må ikke i hemmelighed aktivere et webkamera eller kan sende oplysningerne til fjernserveren eller en tredjepart.
  • Differente faner eller vinduer kender generelt ikke til hinandens forekomster. Men teknisk set er det meget muligt. Det samme kaldes “Same Origin Policy”. For at det samme kan fungere, skal begge instanser indeholde noget særlig JavaScript-kode, der kan håndtere dataudveksling mellem hinanden. Men begrænsningen er der igen af hensyn til brugerens sikkerhed. F.eks. må en webside fra URL abc.com, som en bruger har åbnet, ikke kunne få adgang til en anden browserfane med URL xyz.com og stjæle oplysninger i al hemmelighed.
  • Med brug af det kan man nemt kommunikere over nettet til en fjernserver eller tredjepart, hvor den aktuelle side kom fra. Men af sikkerhedsmæssige årsager er dens evne til at modtage eller sende data fra andre websteder eller domæner deaktiveret. Men det samme er stadig muligt, hvortil nogle JavaScript-arbejder kræver eksplicit samtykke fra fjernsiden. En sådan begrænsning vil ikke være mulig at give, hvis JavaScript ville blive brugt uden for browseren i stedet for indefra, dvs. enten fra en server. Du kan også bemærke, at nogle af de moderne browsere tillader installation af plugin eller udvidelser, hvorved JavaScript-værker, der anvendes inde i browseren, får udvidede tilladelser.

Hvad gør JavaScript-værker unikke?

  • Som vi alle ved, er det et objektbaseret scriptingsprog.
  • Det er skrevet i C. Det er et fortolket sprog.
  • Rent JavaScript er hurtigere i adgangen til DOM.
  • Med brugen af JavaScript-arbejde får brugeren mere kontrol over browseren.
  • Det kan også håndtere dato og tidsstempel.
  • Det kan også registrere brugerens browser og endda OS.
  • Det er letvægt.
  • Det er et scriptingsprog som allerede nævnt.
  • Det er et fortolkerbaseret scriptingsprog.
  • Det er case sensitive dvs. syntaksen er case sensitive.
  • Det er objektbaseret sprog, da det giver foruddefinerede objekter ligesom Java, men det er ikke java.
  • Alle udsagn i JavaScript skal afsluttes med et semikolon (;).
  • Den vigtigste ting, som JavaScript giver, er muligheden for at oprette nye funktioner i scripts. Man kan erklære en funktion i JavaScript ved hjælp af function
  • Fuld understøttelse af HTML og CSS.
  • Det er meget nemt at bruge.
  • Supporterer alle browsere.

Begrænsninger

Med de mange fordele har JavaScript også nogle begrænsninger, som er angivet nedenfor:

  • JavaScript er på klientsiden, og det giver ikke mulighed for at læse eller skrive filer på disken.
  • JavaScript kan ikke bruges til netværksapplikationer, fordi det ikke giver nogen sådan form for støtte.
  • Det giver ikke nogen funktionalitet som multithreading eller multiprocessor.

Slutning

Så med det kom vi alle til at vide, at om nogle grundlæggende oplysninger om udviklingen af JavaScript virker, nogle af de berømte motorer, der kører JavaScript på webbrowsere, hvad er fordelene ved at holde JavaScript inde i browserne, og hvad der kunne ske, hvis JavaScript kunne placeres og køres uden for browserne. Vi er også stødt på nogle af de funktioner i JavaScript-arbejdet, som har gjort det anvendeligt og unikt sammen med nogle af begrænsningerne/ulemperne ved det. Så med det slutter jeg emnet om hvordan javascript arbejde, der er mange flere ting at udforske, som du kan udforske fra nettet.

Anbefalede artikler

Dette har været en guide til JavaScript arbejde. Her har vi diskuteret de grundlæggende begreber, begrænsninger og hvad der gør javascript unikt fra andre. Du kan også kigge på følgende artikler for at lære mere –

  1. Cheat Sheet JavaScript
  2. Use af JavaScript
  3. JavaScript vs JScript
  4. C# vs JavaScript
0 Shares

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.