Ebben az oktatóanyagban példák segítségével megismerheti a let és a var közötti különbséget a JavaScript-ben.
A JavaScript, a kulcsszavak varés lethasználják kijelentik változókat.
A letkulcsszót a JavaScript későbbi verziójában, ES6 néven (ES2015) vezették be . És ez a változók deklarálásának preferált módja.
A JavaScript segítségével a Vs var
Itt található a letés közötti különbségek áttekintése var.
| hadd | var | 
|---|---|
| let blokkolt. | var a függvény hatóköre. | 
| a let nem teszi lehetővé a változók újrabejelentését. | a var lehetővé teszi a változók újrabejelentését. | 
| Az emelés nem bérletben történik. | Az emelés var. | 
A JavaScript lehetővé tette, hogy a Vs változik a Helyi hatókörben
var a függvény hatóköre
A függvény belsejében deklarált változó a függvényen varbelül bárhol használható. Például,
 // program to print text // variable a cannot be used here function greet() ( // variable a can be used here var a = 'hello'; console.log(a); ) // variable a cannot be used here greet(); // hello
A fenti programban az a változót deklaráljuk var. Az a változó a függvényen belül bárhol használható greet.
let blokkolt
A változóval deklarált változó letcsak kódblokkon belül érhető el. Például,
 // program to print the text // variable a cannot be used here function greet() ( let a = 'hello'; // variable b cannot be used here if(a == 'hello')( // variable b can be used here let b = 'world'; console.log(a + ' ' + b); ) // variable b cannot be used here console.log(a + ' ' + b); // error ) // variable a cannot be used here greet();
Kimenet
hello world Elfogatlan ReferenceError: b nincs meghatározva
A fenti programban az a változó deklarálásra kerül a függvény belsejében, és a függvényen belül bárhol elérhető (az a függvény hatóköre lesz).
A b változót azonban a ifblokk utasításban deklarálják . b blokk hatókörű lesz, és csak a ifblokkon belül érhető el.
Ezért amikor ifblokkon kívül megpróbálja elérni a b-t , hiba lép fel (amint azt a program fentebb mutatja).
Megjegyzés : A deklarált változók egy függvényen belül lesz funkció távcsöves engedély varés let.
A let nem engedélyezi a változók újrabejelentését
1. A -vel deklarált változó varújra deklarálható. Például,
 var a = 5; // 5 var a = 3; // 3
A változóval deklarált változó letnem deklarálható újra ugyanazon blokkban vagy ugyanazon hatókörben. Például,
 let a = 5; let a = 3; // error 
Kimenet
El nem fogott SyntaxError: Az „a” azonosítót már deklaráltuk
2. Egy változó varmás tartományban vagy blokkban történő átdeklarálása megváltoztatja a külső változó értékét is. Például,
 var a = 5; console.log(a); // 5 ( var a = 3; console.log(a); // 3 ) console.log(a); // 3
Ha egy változót letmás hatókörben vagy blokkban adunk át, akkor ezt a változót más változóként kezeljük . És a változó értéke kívül nem változik. Például,
 let a = 5; console.log(a); // 5 ( let a = 3; console.log(a); // 3 ) console.log(a); // 5
3. Ha egy varciklusban deklarált változót használunk, akkor a változó értéke megváltozik. Például,
 var a = 2; for(var a = 0; a < 3; a++) ( console.log('hello'); ) console.log(a); // 3
A fenti programban a forhurok újra kijelenti az a változót. Ezért a végén 3 értékre aváltozik .
Amikor egy let- vel deklarált változót hurokban használunk, akkor a változó értéke nem változik. Például,
 let a = 2; for(let a = 0; a < 3; a++) ( console.log('hello'); ) console.log(a); // 2
A fenti programban a forloop az a változót más változóként kezeli, mint a fent deklarált. És ennek a változónak a hatóköre csak a forhurokban van. Ezért az a változó értéke 2 marad a végén.
hadd nem engedi az emelést
A -vel deklarált változókat vara program terjedelmének tetejére emeljük. Például,
 console.log(a); var a; // undefined (not an error)
A kulcsszó letnem teszi lehetővé az emelést. Például,
 console.log(a); let a; // Uncaught ReferenceError: a is not defined
Ha többet szeretne megtudni az emelésről, látogasson el a JavaScript-emelés oldalra.
let és var Böngésző támogatás
A legtöbb modern böngésző támogatja a let. Egyes böngészők azonban nem támogatják teljes mértékben let.
További információért látogasson el a JavaScript let böngésző támogatására.
Megjegyzés : Abban az esetben, globális hatókörű, mind varés letviselkedik ugyanúgy. Például,
 var a = 5; // 5
Az a változó globális hatókörű lesz, és a program bárhol elérhető.
 let a = 5; // 5
Az a változó globális hatókörű lesz, és a program bárhol elérhető.








