Deklarasi Variabel Ganda (Global dan Local) Unit 1

Oleh Untung 299 49 pada Rabu, 26 Okt. 2016, 10:44:42


Kembali ke forum soal ini

#javascript #loop-while-di-javascript #dasar-dari-pengulangan-while


Petunjuk Diskusi
Silahkan masuk untuk berdiskusi



Teman-teman, mohon pencerahannya.

Pada code yang dicontohkan berikut,

var koin = Math.floor(Math.random() * 2);

while(koin){
	console.log("Kepala! Lempar lagi...");
	var koin = Math.floor(Math.random() * 2);
}
console.log("Buntut! Selesai melempar..");

variabel 'koin' sudah dideklarasikan sebelumnya sebagai variabel global. Tetapi kenapa di dalam block 'while' variabel ini dideklarasikan lagi sebagai variabel local?
Apakah ini bukan suatu bentuk inefisiensi?

Terima kasih sebelumnya.
0 jempol


bramanto
300
1157
· 8 tahun, 1 bulan yang lalu · 0 jempol

Halo coder @Untung. Pertanyaan yang bagus sekali!. Jika tidak mendefinisikan variabel koin, program akan terus melakukan loop tak terhingga. Sehingga kita perlu definisikan ulang variabel koin tersebut sampai mendapatkan nilai false agar kondisi loop whilenya berhenti. Sebenarnya ada banyak kondisi untuk memberhentikkan loop tersebut, entah dengan kondisi lain (selain mendefinisikan ulang variabel koin) ataupun langsung break. 

Untung
299
49
penanya
· 8 tahun, 1 bulan yang lalu · 0 jempol

@bramanto, terima kasih banyak atas penjelasannya.

Apakah boleh diberikan contoh code untuk kondisi yang lain yang bisa dipake untuk menghentikan loop tersebut?

Terima kasih sebelumnya.

bramanto
300
1157
· 8 tahun, 1 bulan yang lalu · 0 jempol

Halo coder @untung. Untuk contoh lainnya bisa seperti ini : 

var koin = Math.floor(Math.random() * 2);

while(koin){
	console.log("Kepala! Lempar lagi...");
        if(koin == 1){
            break;
        }
}
console.log("Buntut! Selesai melempar..");

Untung
299
49
penanya
· 8 tahun, 1 bulan yang lalu · 0 jempol

@bramanto, terima kasih banyak atas contohnya.