Akses ke Variabel Eksternal Fungsi dalam JavaScript
Mari kita perhatikan kode berikut:
let num = 1; // mengatur nilai variabel
function func() {
console.log(num); // menampilkannya di konsol
}
func(); // memanggil fungsi
Seperti yang telah saya sebutkan sebelumnya, nilai variabel tidak harus berada sebelum definisi fungsi, yang penting adalah nilainya berada sebelum pemanggilannya:
function func() {
console.log(num);
}
let num = 1;
func();
Sebenarnya, ini tidak sepenuhnya benar. Fungsi kita
bahkan sebelum dipanggil sudah mengetahui nilai variabel
num:
let num = 1;
function func() {
console.log(num); // fungsi sudah tahu bahwa num = 1
}
Berikut contoh yang lebih kompleks:
let num = 1; // pada saat ini fungsi mengetahui bahwa num = 1
function func() {
console.log(num);
}
num = 2; // pada saat ini fungsi mengetahui bahwa num = 2
Mari tambahkan pemanggilan fungsi:
let num = 1; // pada saat ini fungsi mengetahui bahwa num = 1
func(); // akan menampilkan 1
function func() {
console.log(num);
}
func(); // akan menampilkan 1
num = 2; // pada saat ini fungsi mengetahui bahwa num = 2
func(); // akan menampilkan 2
Sekali lagi: sebenarnya fungsi mengetahui nilai-nilai variabel eksternal, bahkan tanpa dipanggil sekalipun.