JavaScript Fundamental #7: Scope, Hoisting, dan Execution Context
1. Apa itu Scope?
Scope adalah area di mana variabel bisa diakses. Dalam JavaScript ada global scope, function scope, dan block scope.
2. Contoh Scope
let nama = "global";
function test() {
let pesan = "lokal";
console.log(nama);
}
3. Apa itu Hoisting?
Hoisting adalah perilaku JavaScript yang memindahkan deklarasi ke atas sebelum kode dieksekusi.
console.log(a);
var a = 10;
Contoh di atas tidak error, tetapi nilainya undefined karena deklarasi var di-hoist.
4. Execution Context
Execution context adalah lingkungan saat JavaScript menjalankan kode. Di dalamnya ada informasi tentang variabel, function, dan nilai this.
5. Ringkasan
- Scope menentukan akses variabel
- Hoisting memengaruhi urutan deklarasi
- Execution context menjelaskan bagaimana kode dijalankan
Di part berikutnya kita masuk ke closure dan lexical environment.

