Junior
let va var o'rtasidagi farq nima?
sobes.tech AI
AIdan javob
var egallik yoki global egallikka ega, qayta e'lon qilish va yozib olish mumkin. Hoistingga ta'sir qiladi va undefined bilan boshlanadi. let blok egallikka ega, yozib olish mumkin, lekin bir xil egallikda qayta e'lon qilish mumkin emas. Shuningdek, Hoistingga ta'sir qiladi, lekin "vaqtinchalik o'lik zona"da bo'lib, boshlanganda foydalanilmaydi.
Taqqoslash jadvali:
| Xususiyat | var |
let |
|---|---|---|
| Egallik | Funktsional / Global | Blok egallik |
| Qayta e'lon qilish | Ha | Yo'q |
| Yozib olish | Ha | Ha |
| Hoisting | Ha | Ha |
| Boshlash | undefined |
- (vaqtinchalik o'lik zona) |
Misol:
// var
function misolVar() {
var x = 10;
if (true) {
var x = 20; // x ni qayta e'lon qilish
console.log(x); // 20
}
console.log(x); // 20
}
// let
function misolLet() {
let y = 10;
if (true) {
let y = 20; // Blok egallikdagi yangi o'zgaruvchi y
console.log(y); // 20
}
console.log(y); // 10
}
misolVar();
misolLet();