Rozdiely medzi jazykom JavaScript var vs Let

JavaScript je skriptovací jazyk, ktorý deklaruje svoje premenné v rôznych typoch pomocou kľúčových slov ako let, const alebo var. let a const majú rovnaké vlastnosti z hľadiska lexikálneho rozsahu. Lexikálny rozsah je definovaný ako viditeľnosť hodnôt premenných cez definovaný alebo uzavretý blok, ktorý obsahuje platné hodnoty a je k nim prístupný.

JavaScript lexikálny rozsah sa nazýva aj statický rozsah alebo Uzatváranie, čo je silný koncept. V JavaScripte var nemá žiadny rozsah bloku, ak je deklarovaný v triede, je viditeľný pre celý rozsah zhora nadol, zatiaľ čo neumožňuje prístup k jeho premennej hodnote mimo uzavretého bloku. Vyhlásenia „var“ sa spracujú na začiatku vykonávania funkcie. Je to podobné konceptu nazývanému zdvíhanie (zdvíhanie sa na vrchol) funkcie.

Vyhlásenie „let“ bolo zavedené v štandardnej verzii ECMAScript 6, ktorá sa často nazýva ES6 alebo ES 2015. ECMAScript je organizácia na udržiavanie štandardných globálnych verzií JavaScriptu, aby si zachovala prispôsobivosť vo všetkých webových prehliadačoch a prostredí, aby sa všetky hlavné internetoví giganti sú v súlade.

V JavaScripte predpokladajme, že premenná je deklarovaná ako podmienená pre () slučku, potom je k dispozícii ako globálna a mimo tejto slučky, zatiaľ čo let to neumožňuje a obmedzuje prístup k deklarovanej premennej iba vo vnútri slučky for. Opätovné vyhlásenie premennej pomocou parametra let spôsobí počas procesu kompilácie chybu syntaxe.

Porovnanie Head to Head medzi JavaScriptom Var vs Let

Nižšie je najlepších 8 porovnaní medzi variantmi JavaScript Var a Let

Kľúčové rozdiely medzi jazykom JavaScript Var a Let

JavaScript Var vs Let sú populárne voľby na trhu; poďme diskutovať o niektorých hlavných rozdieloch medzi jazykom JavaScript Var vs Let:

  1. Premenná je názov úložiska pre hodnotu priradenú na identifikáciu jeho umiestnenia. V JavaScripte je možné premennú deklarovať pomocou let alebo var. Rozsah deklarácie „var“ je globálny bez ohľadu na deklarovaný rozsah alebo umiestnenie, zatiaľ čo premenná deklarovaná pomocou príkazu let je rozsah rozsahu alebo uzavretý rozsah.
  2. Vo väčšine zo staršej verzie kódu bolo možné nájsť premennú var pre väčšinu premenných deklarovaných vo väčšine kódu JavaScript. 'var' zdvihne variabilnú hodnotu do celého rozsahu, zatiaľ čo príkaz let nezdvihne hodnotu.
  3. Vyhlásenie „var“ bolo k dispozícii od začiatku skriptu JavaScript a príkaz let bol nedávno predstavený vo verzii skriptu ES6 (ES 2015) na vynútenie funkcií zameraných na určovanie rozsahu blokov.
  4. 'var' deklarovaný na ľubovoľnej úrovni rozsahu sa stáva globálnym, zatiaľ čo rozsah rozsahu je rozsah bloku, kde blok možno definovať ako kód uzavretý medzi kvetinovými zátvorkami ().
  5. „var“ deklarované premenné v JavaScripte inicializujú predvolenú hodnotu premennej na nedefinovanú, akonáhle je deklarovaná v rozsahu, zatiaľ čo deklarované premenné tiež načítajú predvolenú hodnotu, ktorá nie je definovaná.
  6. var nemá lexikálny rozsah, ale má globálny rozsah, zatiaľ čo let musí blokovať rozsah, ktorý môže byť implicitný alebo explicitný na základe umiestnenia príkazu let. Ak príkaz let existuje vo vnútri rozsahu bloku, stáva sa lexikálnym rozsahom.
  7. V rámci objektu Windows môžu byť použité premenné, zatiaľ čo v tomto scenári nemožno použiť premenné deklarované príkazom dek.
  8. Nie je bezpečnejšie použiť typ identifikátorov deklarovaných pomocou príkazu let, ktorý sa líši v prípade premenných deklarovaných var.
  9. Pokiaľ ide o porovnanie výkonnosti, var je rýchlejší a let je pomalší vo vnútri slučiek počas behu alebo vykonávania kódu.
  10. Opakované deklarovanie premennej deklarovanej ako premenná v rovnakej funkcii alebo rozsahu vedie k chybe syntaxe, zatiaľ čo premennú deklarovanú ako premennú nemožno opätovne deklarovať.
  11. K chybám a nejasnostiam nadradeným vo vnútri rozsahu je možné predísť použitím premennej deklarovanej letom a odporúča sa používať všade, kde je to možné, a nie vo všetkých prípadoch.
  12. V JavaScripte je možné premennú používajúcu var deklarovať ako var a = 1; keďže premennú používajúcu príkaz let možno deklarovať ako: let a = 1; Jediným rozdielom, ktorý treba pozorovať medzi var a let v javascripte, je blok rozsahu a vyhlásenie alebo opätovné vyhlásenie.
  13. Názov deklarovaných premenných má určité obmedzenia, ktoré je potrebné dodržať pred vyhlásením tak, že jeho názov by mal začínať iba písmenami, číslicami, znakmi $ alebo _. Príkazy var a javascript by sa nemali používať ako názov identifikátorov pri deklarovaní premenných.

Porovnávacia tabuľka medzi jazykom JavaScript Var a Let

Nasleduje porovnávacia tabuľka medzi jazykom JavaScript Var a Let

Základ porovnania medzi variantmi JavaScript Var a Let JavaScript Var nechať
definíciavar je stará metóda deklarovania premennejLet je nedávno zavedená forma variabilného vyhlásenia
používaniePoužíva sa hlavne na deklarovanie premenných v programoch JavaScriptRovnaké ako var, ale poskytuje dodatočnú funkčnosť pri presadzovaní prístupnosti rozsahu blokov
vyhlásenieMôže byť deklarovaná kdekoľvek a premenná je zdvihnutáMôže byť deklarovaná kdekoľvek a obmedzená na blokovanie rozsahu
prístupnosťGlobálny prístupZablokujte prístup k rozsahu alebo lexikálny rozsah
režimV prísnom režime umožňuje var premennú, aby bola znovu deklarovaná v rovnakom rozsahu.let neumožňuje opätovné vyhlásenie tej istej premennej znova
Podpora prehliadačaVšetky prehliadače podporujú varLen málo prehliadačov nepodporuje príkaz let
zdvíhacieGlobálne premenné sú zdvihnutéPremenné s rozsahom bloku nie sú v skutočnosti zdvíhané
kompatibilitaPodporované všetkými prehliadačmi a JS runtime prostredímTranspilátory, ako je Babel, sa dajú použiť na ich konverziu na staršie verzie, aby sa zabezpečila podpora vo všetkých prehľadávačoch

záver

Použitie var v JavaScriptu má veľa priestoru na chyby počas vykonávania kódu. Globálny rozsah deklarácie var spôsobuje zníženie použitia rovnakého identifikátora na rôznych miestach v rovnakej triede alebo súbore. Tým sa znižuje opakovaná použiteľnosť kódu. Vyhlásenie premennej pomocou var sa správa podobne ako let, ale s jediným rozdielom lexikálneho rozsahu v celom kóde.

Vyhlásenie premennej pomocou slova „let“ spôsobí, že sa k premennej pristupuje cez uzavretý rozsah, čo vedie k deklarovaniu a použitiu identifikátora mimo blokovaného rozsahu, príkazu alebo výrazu. Var nemôže byť nahradený letom, pretože má svoje vlastné zvyklosti naprieč rôznymi rozsahmi. Let by sa mal používať iba v prípadoch, keď je určenie rozsahu blokov prvoradé a zdvíhanie nie je potrebné v rozsahu vykonávania.

Odporúčaný článok

Toto bol sprievodca pre najväčšie rozdiely medzi jazykom JavaScript Var a Let. Tu tiež diskutujeme o variante JavaScript Var vs Let kľúčové rozdiely s infografikou a porovnávacou tabuľkou. Ďalšie informácie nájdete aj v nasledujúcich článkoch -

  1. Užitočnejšie je formát HTML5 verzus Flash, ktorý je užitočnejší
  2. Porovnanie Java vs Node JS
  3. Rozdiely v jazyku Python a JavaScript
  4. Java a JavaScript - 10 najväčších rozdielov
  5. HTML5 vs JavaScript Aké sú funkcie

Kategórie: