Parameter Fungsi Eksternal dan Internal dalam JavaScript
Mari kita buat agar fungsi eksternal dan internal sama-sima menerima parameter:
function test(num) {
function func(localNum) {
console.log(localNum);
}
}
Mari teruskan parameter fungsi eksternal ke pemanggilan fungsi internal:
function test(num) {
function func(localNum) {
console.log(localNum); // akan menampilkan 1
}
func(num); //!! meneruskan parameter
}
test(1); // meneruskan angka sebagai parameter
Jadi, dalam fungsi internal akan
tersedia variabel num sebagai variabel
eksternal dari fungsi induk dan variabel
localNum, yang merupakan variabel lokal
fungsi internal.
Kedua variabel ini akan memiliki nilai yang sama:
function test(num) {
function func(localNum) {
console.log(num); // akan menampilkan 1
console.log(localNum); // akan menampilkan 1
}
func(num);
}
test(1);
Perbedaan antara mereka adalah: jika
dalam fungsi internal kita mengubah variabel
num - variabel tersebut juga akan berubah di fungsi eksternal:
function test(num) {
function func(localNum) {
num = 2; // mengubah variabel num
}
func(num); // meneruskan parameter
console.log(num); // akan menampilkan 2
}
test(1); // meneruskan angka sebagai parameter
Sedangkan variabel localNum akan bersifat lokal.
Perubahannya tidak akan menyebabkan
perubahan apapun di fungsi eksternal. Dan variabel
localNum itu sendiri tidak akan terlihat
dari luar fungsi internal:
function test(num) {
function func(localNum) {
localNum = 2; // mengubah variabel num
}
func(num); // meneruskan parameter
}
test(1); // meneruskan angka sebagai parameter
Tentukan, tanpa menjalankan kode, apa yang akan ditampilkan di konsol:
function test(num) {
function func(localNum) {
console.log(localNum);
}
func(num);
}
test(1);
Tentukan, tanpa menjalankan kode, apa yang akan ditampilkan di konsol:
function test(num) {
function func(localNum) {
console.log(localNum);
}
func(num + 1);
}
test(1);
Tentukan, tanpa menjalankan kode, apa yang akan ditampilkan di konsol:
function test(num) {
function func(localNum) {
console.log(num);
}
func(num + 1);
}
test(1);
Tentukan, tanpa menjalankan kode, apa yang akan ditampilkan di konsol:
function test(num) {
function func(localNum) {
localNum = 2;
}
func(num);
console.log(num);
}
test(1);
Tentukan, tanpa menjalankan kode, apa yang akan ditampilkan di konsol:
function test(num) {
function func(localNum) {
localNum = 2;
}
func(num);
console.log(localNum);
}
test(1);
Tentukan, tanpa menjalankan kode, apa yang akan ditampilkan di konsol:
function test(num) {
function func(localNum) {
num = 2;
}
func(num);
console.log(num);
}
test(1);