Hogyan működik a JavaScript?

Hogyan működik a JavaScript

Hogyan működik a JavaScript

Előadás a JavaScript működéséhez?

A JavaScript egy szkriptnyelv, amelyet a böngészőben használnak a felhasználói felület interakciójára. Brendan Eich volt az első, aki a Netspace Navigator webböngészőhöz készített JavaScript-motort a Netspace-nél. Ezt C nyelven implementálták, és a kódneve SpiderMonkey volt. Kezdetben Mocha volt a projekt neve, majd átkeresztelték LiveScriptre, végül amikor a Netspace és a Sun licencszerződést kötött, ismét átkeresztelték JavaScriptre. Ebben a témában azt fogjuk megismerni, hogyan működik a javascript. Bizonyára hallottunk már olyan népszerű motorokról, mint a V8, a Spider Monkey és még sok más. A különböző motoroknak különböző “kódnevei” vannak, például:

  • V8 – az Operában használt motor & Chrome.
  • SpiderMonkey – a Firefoxban használt motor.
  • Trident, Chakra – az IE-ben használt motor & Nitro.
  • ChakraCore – a Microsoft Edge-ben használt motor.
  • SquirrelFish – a Safariban használt motor.

A javascripthez használt motor két fő komponensből áll:

Kezdés az ingyenes szoftverfejlesztő tanfolyam

Webfejlesztés, programozási nyelvek, szoftvertesztelés & egyéb

  • Heap memória- itt történik a memória kiosztása.
  • Call Stack – ez az a hely, ahol a stackeket meghívják és a kódot végrehajtják.

MEGJEGYZÉS:

A JavaScript, egyszálú programozási nyelv, ami azt jelenti, hogy egyetlen Call Stackkel rendelkezik, és így egyszerre egy dolgot képes elvégezni. A Call Stack alapvetően egy adatstruktúra, amely a programnak azt a pontját rögzíti, amelyik éppen végrehajtásra kerül. Ez a hívási verem hasonlít a többi veremhez, amelynek alapvető funkciói vannak, például ha belépünk egy függvénybe, akkor azt a verem tetejére tesszük. Ha egy függvényből vissza akarunk térni, akkor a verem tetejéről le kell ugranunk. Ez minden verem alapvető funkcionalitása. Mivel a JavaScript-funkciókat vezérlő motorokról beszélünk, ezek nagyon bonyolultak, de az alapvető dolgok, amelyeket tágabb értelemben minden motor végez, a következők:

  • Ha a böngésző beolvassa a szkriptet, akkor a motor magába a böngészőbe van ágyazva.
  • A szkript beolvasása után átalakítja (“lefordítja”) a szkriptet gépi nyelvre.
  • Aztán a gépi kód fut, elég gyorsan.

Mit tudnak a böngészőn belüli JavaScript munkák?

  • Módosítja a meglévő tartalmat, módosítja a stílusokat új HTML hozzáadásával az oldalakhoz.
  • Szolgáltat olyan funkciókat, mint az egérkattintás, az egér lebegtetése stb. amelyek reagálnak a használat műveleteire.
  • Kéréseket küld és fogad a hálózaton keresztül távoli szerverekhez, a teljes oldal betöltése nélkül, ahogy a felhasználó bevezeti. Az egyik ilyen technológia, amely nagyon híres, az AJAX.
  • Ezzel lehet beállítani és megkapni a cookie-k értékeit, üzeneteket ad a felhasználóknak tájékoztatásra, figyelmeztetésre és egyéb célokra.
  • Az ideiglenes adatok tárolására is képes a kliensoldalon.

Mit nem tudnak a böngészőn belüli JavaScript munkák?

A JavaScript képességei a böngészőn belül némileg korlátozottak a felhasználó biztonsága érdekében. A cél az, hogy megakadályozzák, hogy valamilyen harmadik fél weboldala hozzáférjen privát információkhoz vagy kárt tegyen a felhasználó adataiban. Az ilyen jellegű korlátozott hozzáférés néhány forgatókönyve:

  • Alapértelmezés szerint a JavaScript egy weboldalon korlátozza a merevlemezen lévő tetszőleges fájlok olvasását/írását, másolását vagy programok végrehajtását. Még az operációs rendszer funkcióihoz sincs közvetlen hozzáférése. Néhány modern böngésző lehetővé teszi számára a fájlokkal való munkát is, de ugyanezek esetében a hozzáférés korlátozott, és csak akkor biztosított, ha a felhasználó bizonyos műveleteket végez, például “bedob egy fájlt” a böngészőablakba. Néhány módon a kamerával/mikrofonnal és más eszközökkel való interakcióra is van lehetőség, de ehhez szintén a felhasználó kifejezett engedélye szükséges. Így egy JavaScript-kompatibilis oldal nem engedélyezhet titokban webkamerát, vagy küldhet információt a távoli szervernek vagy bármely harmadik félnek.
  • A különböző lapok vagy ablakok általában nem tudnak egymás példányairól. De technikailag ez nagyon is lehetséges. Ugyanezt nevezik “Same Origin Policy”-nek. Ahhoz, hogy ugyanez működjön, mindkét példánynak tartalmaznia kell valamilyen speciális JavaScript kódot, amely képes kezelni az egymás közötti adatcserét. De a korlátozás ismét a felhasználó biztonsága érdekében van. Például egy weboldal az abc.com URL-ről, amelyet a felhasználó megnyitott, nem férhet hozzá egy másik böngészőfülhöz az xyz.com URL-rel, és nem lophat el titokban információkat.
  • Az alkalmazásával könnyen kommunikálhatunk a neten keresztül bármely távoli szerverrel vagy harmadik féllel, ahonnan az aktuális oldal származik. Biztonsági okokból azonban le van tiltva az a képessége, hogy adatokat fogadjon vagy küldjön más webhelyekről vagy tartományokból. De ugyanez még mindig lehetséges, amihez egyes JavaScript munkákhoz a távoli oldal kifejezett hozzájárulása szükséges. Ilyen korlátozást nem lehet biztosítani, ha a JavaScriptet nem a böngészőn belülről, hanem a böngészőn kívülről, azaz akár egy szerverről használnák. Azt is észreveheti, hogy a modern böngészők némelyike lehetővé teszi a plugin vagy bővítmény telepítését, amellyel a böngészőn belül használt JavaScript munkák kiterjesztett engedélyeket kapnak.

Mi teszi egyedivé a JavaScript munkát?

  • Mint tudjuk, ez egy objektumalapú szkriptnyelv.
  • C nyelven íródott. ez egy értelmezett nyelv.
  • A tiszta JavaScript gyorsabb a DOM elérésében.
  • A JavaScript munka használatával a felhasználó nagyobb kontrollt kap a böngésző felett.
  • A dátumot és az időbélyeget is képes kezelni.
  • A felhasználó böngészőjét és még az operációs rendszert is képes felismerni.
  • Könnyűsúlyú.
  • Egy szkriptnyelv, mint már említettük.
  • Egy interpreter alapú szkriptnyelv.
  • Ez nagy- és kisbetű érzékeny, azaz a szintaxis nagy- és kisbetű érzékeny.
  • Objekt-alapú nyelv, mivel előre definiált objektumokat biztosít, mint a Java, de nem Java.
  • A JavaScriptben minden egyes utasítást pontosvesszővel (;) kell lezárni.
  • A legfontosabb dolog, amit a JavaScript biztosít, az a szkripteken belüli új függvények létrehozásának lehetősége. Egy függvényt a JavaScriptben a function használatával lehet deklarálni
  • Teljes HTML és CSS támogatás.
  • Ez nagyon könnyen használható.
  • Támogatja az összes böngészőt.

Korlátozások

A sok előny mellett a JavaScriptnek van néhány korlátja is, amelyeket az alábbiakban ismertetünk:

  • A JavaScript kliensoldalon van, és nem biztosít lehetőséget a lemezen lévő fájlok olvasására vagy írására.
  • A JavaScript nem használható hálózati alkalmazásokhoz, mert nem nyújt ilyen jellegű támogatást.
  • Nem biztosít olyan funkciókat, mint a többszálúság vagy a többprocesszor.

Következtetés

Ezzel együtt mindannyian megtudtuk, hogy néhány alapvető információ a JavaScript munkáinak fejlődéséről, néhány híres motorról, amelyek JavaScriptet futtatnak a webböngészőkben, melyek a JavaScript böngészőkön belüli tartásának előnyei, és mi történhetne, ha a JavaScriptet a böngészőkön kívül lehetne elhelyezni és futtatni. A JavaScript munka néhány olyan jellemzőjével is találkoztunk, amelyek használhatóvá és egyedivé tették, valamint néhány korlátozással/hátránnyal együtt. Ezzel tehát lezárom a témát arról, hogy hogyan működik a javascript, még sok mindent felfedezhetünk, amit a webről felfedezhetünk.

Elajánlott cikkek

Ez volt egy útmutató a JavaScript munkához. Itt megvitattuk az alapfogalmakat, a korlátokat és azt, hogy mi különbözteti meg a javascriptet a többitől. A következő cikkeket is megnézheti, ha többet szeretne megtudni –

  1. Cheat Sheet JavaScript
  2. Uses of JavaScript
  3. JavaScript vs JScript
  4. C# vs JavaScript
0 Shares

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.