Beda-beda ing telu cara: scope, hoisting behavior, lan reassignment.
js
() {
() {
a = ;
b = ;
c = ;
}
.(a);
.(b);
}
Beda-beda ing telu cara: scope, hoisting behavior, lan reassignment.
() {
() {
a = ;
b = ;
c = ;
}
.(a);
.(b);
}
var iku function-scoped, hoisted lan initialized menyang undefined, lan bisa redeclared. Iki nyebabake leaks sing nggumunake — atiköne.let iku block-scoped ({ }), reassignable, lan manggon ing temporal dead zone nganti baris deklarasinipun (akses awal njaluk error).const iku block-scoped lan ora bisa reassigned — nanging cathet yen binding iku constant, bukan nilai-ipun:const user = { name: "Ann" };
user.name = "Bob"; // ✅ allowed — mutating the object, not reassigning
user = {}; // ❌ TypeError — can't rebind `user`
Pilih const kanthi default; ganti menyang let mung upama kudu reassign; aja nggunakake var ing kode anyar. Iki nggawe maksud cetha ("iki ora bakal owah") lan nyegah scope leaks lan hoisting confusion sing var dawa.