Tutorial Belajar JavaScript Bagian 5 : Jenis-jenis Tipe Data JavaScript

0
181

Pada tutorial sebelumnya, kita sudah belajar Tutorial Belajar JavaScript Bagian 4 : Cara Menampilkan Output JavaScript, selanjutnya kita akan belajar jenis-jenis tipe data JavaScript.

Tipe data pada dasarnya menentukan jenis data apa yang dapat disimpan dan dimanipulasi dalam sebuah program.

Ada 6 tipe data dasar dalam JavaScript yang dapat dibagi menjadi 3 kategori utama:

  • Tipe data primitif (atau primer), String, Number, dan Boolean adalah tipe data primitif
  • Tipe data komposit (atau referensi), Objek, Array, dan Fungsi (yang merupakan semua tipe objek) adalah tipe data komposit
  • Tipe data khusus, sedangkan Undefined dan Null adalah tipe data khusus.

..

Tipe data primitif hanya dapat menyimpan satu nilai pada satu waktu, sedangkan tipe data komposit dapat menampung kumpulan nilai dan entitas yang lebih kompleks.

Mari kita bahas masing-masing secara mendetail.

Tipe Data String

Tipe data string digunakan untuk merepresentasikan data tekstual (yaitu urutan karakter). String dibuat menggunakan tanda kutip tunggal atau ganda yang mengelilingi satu atau lebih karakter, seperti yang ditunjukkan di bawah ini:

<script>
        // Buat variabel
    var a = 'Halo semua!';  // menggunakan single quotes
    var b = "Halo semua!";  // menggunakan double quotes
    
    // Cetak nilai variabel
    document.write(a + "<br>");
    document.write(b);
</script>

Anda dapat menyertakan tanda kutip di dalam string selama berbeda dengan tanda kutip penutup.

<script>
    // Buat variabel
    var a = "Ini hari Jum'at.";
    var b = 'Dia berkata "Halo" kemudian pergi.';
    var c = 'We\'ll never give up.';
    
    // Cetak nilai variabel
    document.write(a + "<br>");
    document.write(b + "<br>");
    document.write(c);
</script>

Jenis Data Number (Angka)

Tipe data angka digunakan untuk merepresentasikan bilangan positif atau negatif dengan atau tanpa tempat desimal, atau bilangan yang ditulis menggunakan notasi eksponensial mis. 1.5e-4 (setara dengan 1.5×10-4).

<script>
    // Buat variabel
    var a = 25;
    var b = 80.5;
    var c = 4.25e+6;
    var d = 4.25e-6;
    
    // Cetak nilai variabel
    document.write(a + "<br>");
    document.write(b + "<br>");
    document.write(c + "<br>");
    document.write(d);
</script>

Tipe data Number juga menyertakan beberapa nilai khusus yaitu: Infinity, -Infinity dan NaN.

Infinity mewakili Infinity matematika , yang lebih besar dari angka apa pun.

Infinity adalah hasil pembagian bilangan bukan nol dengan 0, seperti yang ditunjukkan di bawah ini:

<script>
    <script>
    document.write(16 / 0);
    document.write("<br>");
    document.write(-16 / 0);
    document.write("<br>");
    document.write(16 / -0);
</script>

Sedangkan NaN mewakili nilai Not-a-Number khusus.

Ini adalah hasil dari operasi matematika yang tidak valid atau tidak ditentukan, seperti mengambil akar kuadrat dari -1 atau membagi 0 dengan 0, dll.

<script>
    document.write("Some text" / 2);
    document.write("<br>");
    document.write("Some text" / 2 + 10);
    document.write("<br>");
    document.write(Math.sqrt(-1));
</script>

Tipe Data Boolean

Tipe data Boolean hanya dapat menampung dua nilai: true (benar) atau false (salah).

Ini biasanya digunakan untuk menyimpan nilai seperti yes (true) atau no (false), on (true) atau off (false), dll.

Seperti yang ditunjukkan di bawah ini:

<script>
    // Buat variabel
    var isMembaca = true;   // ya, saya sedang membaca
    var isTidur = false; // tidak, saya sudah bangun
    
    // Cetak nilai variabel
    document.write(isMembaca + "<br>");
    document.write(isTidur);
</script>

Nilai Boolean juga muncul sebagai hasil perbandingan dalam suatu program.

Contoh berikut membandingkan 2 variabel dan menunjukkan hasilnya di kotak dialog peringatan:

<script>
    var a = 2, b = 5, c = 10;

    document.write(b > a) // Output: true
    document.write("<br>");
    document.write(b > c) // Output: false
</script>

Tipe Data Undefined (Tidak Terdefinisi)

Tipe data undefined (tak terdefinisi) hanya dapat memiliki satu nilai-nilai khusus tak terdefinisi. Jika variabel telah dideklarasikan, tetapi belum diberi nilai, nilainya tidak terdefinisi.

<script>
   // Buat variabel
    var a;
    var b = "Halo Dunia!"
    
    // Cetak nilai variabel
    document.write(a + "<br>");
    document.write(b);
</script>

Jenis Data Null

Ini adalah tipe data khusus lainnya yang hanya dapat memiliki satu nilai – nilai null.

Nilai null berarti tidak ada nilai.

Ini tidak sama dengan string kosong (“”) atau 0, sederhananya tidak ada nilai.

Variabel dapat secara eksplisit dikosongkan dari kontennya saat ini dengan menetapkan nilai null.

<script>
    var a = null;
    document.write(a + "<br>"); // Print: null
    
    var b = "Halo Dunia!"
    document.write(b + "<br>"); // Print: Halo Dunia!
    
    b = null;
    document.write(b) // Print: null
</script>

Tipe Data Objek

Objek adalah tipe data kompleks yang memungkinkan Anda menyimpan kumpulan data.

Sebuah objek berisi properti, yang didefinisikan sebagai pasangan nilai-kunci.

Kunci properti (nama) selalu berupa string, tetapi nilainya dapat berupa tipe data apa pun, seperti string, angka, boolean, atau tipe data kompleks seperti array, fungsi, dan objek lainnya.

Anda akan mempelajari lebih lanjut tentang objek di tutorial selanjutnya.

Contoh berikut akan menunjukkan cara termudah untuk membuat objek di JavaScript.

<script>
    var objectKosong = {};
    var orang = {"nama": "Budi", "panggilan": "Karmoyo", "usia": "36"};
     
    // Agar mudah dibaca
    var mobil= {
        "model": "BMW X3",
        "warna": "putih",
        "pintu": 5
    }
    
    // Cetak nilai variable di konsol browser
    console.log(orang);
    console.log(mobil);
</script>

Anda dapat menghilangkan tanda kutip pada nama properti jika namanya adalah nama JavaScript yang valid.

Jadi benda mobil pada contoh di atas bisa juga ditulis sebagai:

<script>
    var mobil = {
        model: "BMW X3",
        warna: "putih",
        pintu: 5
    }
    
    // Cetak nilai variable di konsol browser
    console.log(mobil);
</script>

Tipe Data Array

Array adalah jenis objek yang digunakan untuk menyimpan banyak nilai dalam satu variabel.

Setiap nilai (juga disebut elemen) dalam array memiliki posisi numerik, yang dikenal sebagai indeksnya, dan dapat berisi data dari semua tipe data-angka, string, boolean, function, object, dan bahkan array lainnya.

Indeks array dimulai dari 0, sehingga elemen array pertama adalah arr [0] bukan arr [1].

Cara termudah untuk membuat array adalah dengan menetapkan elemen array sebagai daftar yang dipisahkan koma yang diapit oleh tanda kurung siku, seperti yang ditunjukkan pada contoh di bawah ini:

<script>
   // Membuat array
    var warna = ["Merah", "Kuning", "Hijau", "Orange"];
    var kota = ["Jakarta", "Medan", "Bandung"];
    
    // Cetak nilai array
    document.write(warna[0] + "<br>");   // Output: Merah
    document.write(kota[2]);   // Output: Bandung
</script>

Tipe Data Function

Function adalah objek yang dapat dipanggil yang mengeksekusi blok kode.

Karena function adalah objek, jadi dimungkinkan untuk menugaskannya ke variabel, seperti yang ditunjukkan pada contoh di bawah ini:

<script>
   var salam = function(){ 
        return "Halo Dunia!"; 
    }
     
    // Periksa tipe variable salam
    document.write(typeof salam) // Output: function
    document.write("<br>");
    document.write(salam());     // Output: Halo Dunia!
</script>

Faktanya, function dapat digunakan di mana saja nilai lain dapat digunakan.

Function dapat disimpan dalam variabel, object, dan array.

Function bisa diteruskan sebagai argumen ke function lain, dan function bisa dikembalikan dari function fungsi.

Coba lihat function berikut:

<script>
    function buatSalam(nama){
        return "Halo, " + nama;
    }
    function tampilkanSalam(salamFunction, userNama){
        return salamFunction(userNama);
    }
     
    var hasil = tampilkanSalam(buatSalam, "Budi");
    document.write(hasil); // Output: Halo, Budi
</script>

Operator Typeof

Operator typeof dapat digunakan untuk mencari tahu tipe data apa yang dikandung variabel atau operand. Dapat digunakan dengan atau tanpa tanda kurung (typeof (x) atau typeof x).

Operator typeof sangat berguna dalam situasi ketika Anda perlu memproses nilai dari jenis yang berbeda secara berbeda, tetapi Anda harus sangat berhati-hati, karena dapat menghasilkan hasil yang tidak diharapkan dalam beberapa kasus, seperti yang ditunjukkan dalam contoh berikut:

<script>
       // Nomor
    document.write(typeof 15 + "<br>");  // Prints: "number"
    document.write(typeof 42.7 + "<br>");  // Prints: "number"
    document.write(typeof 2.5e-4 + "<br>");  // Prints: "number"
    document.write(typeof Infinity + "<br>");  // Prints: "number"
    document.write(typeof NaN + "<br>");  // Prints: "number". Bisa juga "Not-A-Number"
     
    // Strings
    document.write(typeof '' + "<br>");  // Prints: "string"
    document.write(typeof 'hello' + "<br>");  // Prints: "string"
    document.write(typeof '12' + "<br>");  // Prints: "string". Angka dalam tanda kutip adalah tipe string
     
    // Booleans
    document.write(typeof true + "<br>");  // Prints: "boolean"
    document.write(typeof false + "<br>");  // Prints: "boolean"
     
    // Undefined
    document.write(typeof undefined + "<br>");  // Prints: "undefined"
    document.write(typeof undeclaredVariable + "<br>"); // Prints: "undefined"
     
    // Null
    document.write(typeof Null + "<br>");  // Prints: "object"
     
    // Objects
    document.write(typeof {name: "John", age: 18} + "<br>");  // Prints: "object"
     
    // Arrays
    document.write(typeof [1, 2, 4] + "<br>");  // Prints: "object"
     
    // Functions
    document.write(typeof function(){});  // Prints: "function"
</script>

Seperti yang dapat Anda lihat dengan jelas pada contoh di atas saat kita menguji nilai null menggunakan operator typeof (baris no-30), ia mengembalikan “object”, bukan “null”.

Ini adalah bug yang sudah lama ada di JavaScript, tetapi karena banyak kode di web yang ditulis menggunakan type ini, dan memperbaikinya akan menimbulkan lebih banyak masalah, jadi gagasan untuk memperbaiki masalah ini ditolak oleh komite yang merancang dan memelihara JavaScript .

Semoga tutorial ini bisa membantu Anda belajar jenis-jenis tipe data JavaScript.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.