I Vanilla JavaScript deklareras variabler med nyckelordet var. I ES6 kan du nu definiera variabler med hjälp av nyckelorden let och const också. Alla tre nyckelorden har samma syntax för variabeldeklaration och initialisering, men de skiljer sig åt i fråga om räckvidd och användning. Låt oss lära oss skillnaderna mellan dessa tre nyckelord.

var nyckelord

var’ nyckelordet har traditionell syntax för variabeldefinition. Eventuellt kan du initialisera variabeln med ett värde. Om du inte initialiserar din variabel i var-angivelsen tilldelas den automatiskt JavaScript-värdet undefined.

1) Omfattning

2) Hoisting av var-deklarationer

Vänligen observera att variabler som deklareras med var-angivelsen är föremål för hoisting. Hoisting innebär att om vi deklarerar en variabel (deklarerad men inte initialiserad) i slutet av en funktion, kommer körtiden att lyfta upp den till toppen och vi kommer inte att få något fel om vi skulle ha använt variabeln innan den deklarerades.

Läs mer:

3) Om du inte använder nyckelordet var

I JavaScript, om du inte använder nyckelordet var för variabeldeklaration (implicit deklaration) kommer variabeln att skapas i den globala räckvidden. t.ex.

for(index=0; index< array.length; index++){//index is in global scope //code}

Ovanförvarande for-slinga kommer att skapa en variabel som heter index i den globala räckvidden. Om någon annan också råkar använda en global index-variabel har du precis skrivit över deras variabel.

För att undvika att ge variabeln global räckvidd måste du använda nyckelordet var i din variabeldeklaration.

let nyckelordet

let nyckelordet liknar i hög grad var nyckelordet – med mer begränsning i räckvidd.

const nyckelordet

  1. const deklarerar en variabel med blockräckvidd med ett konstant värde. Det är i princip en variabeldeklaration med nyckelordet var där variabelns värde är konstant och inte kan ändras.
  2. const följer samma principer för scoping som nyckelordet let.
  3. Om du vet att variabeln du deklarerar inte kan och inte bör tillåtas att omfördela den, deklarera den då med const, annars använd nyckelordet let.

Syntax och användning

const PI = "3.14";PI = 12;//Uncaught TypeError: Assignment to constant variable.

Lämna ett svar

Din e-postadress kommer inte publiceras.