Postingan lainnya
Kelas Premium!
Belajar Javascript untuk website
Gunakan kupon "mulaijs" untuk diskon 75 ribu!
variabel, fungsi dan operator di Javascript
saya sedang mengikuti tutorial JavaScript di sekolah koding ini. Saya menemukan kejanggalan utk materi berikut : var number_1 = 1000; var new_number = Math.random().toFixed(2) + number_1;
Seharusnya hasil dari new_number, karena 2 operand nya bertipe number, sehingga operator + disana berarti penjumlahan. Tapi kenyataannya di video maupun di hasil percobaan saya yg muncul adalah bertipe string, salah satu hasilnya spt ini : 0.961000. Ada yg bisa beri penjelasan ? Dan pertanyaan kedua kenapa fungsi random selalu menghasilkan angka desimal dan dibawah 1. Dari hasil beberapa kali saya coba refresh dan juga di video. hasilnya selalu spt itu. Terima kasih
3 Jawaban:
Jawaban Terpilih
Kasus 1 => toFixed() jadi string
//methode toFixed memang salah satu fungsi angka tapi nilai yg dikembalikan = 'string'
//makanya ndk bisa dibuat operasi matematika
// coba uji dulu menggunkan metode isNaN (cek angka / bukan)
alert(isNaN(Math.random().toFixed(2))); // output false => jadi bukan angka
// jika akan digunakan operasi mtk ubah dulu type nya mjd number lagi
// dengan fungsi parseFloat();
var new_number = parseFloat(Math.random().toFixed(2)) + number_1;
alert(new_number); //output 1000,xx
Kasus 2 => kenapa fungsi random selalu menghasilkan angka desimal dan dibawah 1.
Itu emg fungsi standartnya ,, tapi kalau ingin dibuat lebih dari 1..kita buat rumus sendiri.. contoh :
var bukanSatuLagi = Math.floor((Math.random() * 100) + 1);
alert(bukanSatuLagi); // ouput acak mulai 1-100
Semoga Membantu (^_^)