kode pertama tanpa parameter variabel i di function dan loop
seperti ini ;
var loop = function()
{
var i=0;
while(i<3)
{i++
console.log( "Saya sedang looping!");
}
};
loop();
output = benar
begitu pula jika saya beri parameter hanya pada function"var loop = function(i)" dan parameter loop"loop();" saya kosongkan ;
output = benar juga
tapi kenapa jika parameter variabel i saya berikan ke loop " loop(i);"
output= Code anda error dengan pesan:
"ReferenceError: i belum dideklarasikan"
0 jempol
ganis
198
841
·
10 tahun, 4 bulan yang lalu
·
0 jempol
Saat anda melakukan
loop(i);
"i" tersebut belum dideklarasikan. Karena "i" sudah dideklarasikan di dalam function, tetapi tidak di luar.
anda bisa melakukan seperti ini.
var loop = function(i)
{
var i=0; // me reset i, sehingga apapun nilai i sebelumnya tidak berpengaruh
while(i<3)
{i++;
console.log( "Saya sedang looping!");
}
};
var i=1
loop(i);
perhatikan bahwa 'i' yang di luar dan 'i' yang di dalam function adalah berbeda walaupun mereka memiliki nama variabel yang sama. Mereka berbeda karena ruang lingkup dari code tersebut.