Tipe Data

Tipe data adalah suatu struktur data yang terdapat pada variable atau merepresentasikan suatu value. Javascript adalah bahasa pemograman yang dinamis untuk urusan tipe data karena variable dalam javascript akan berubah tipe datanya tergantung dari value yang ditetapkan pada variable. Perhatikan Kode berikut ini Setiap bahasa pemograman memiliki struktur data mereka masing-masing. Javascript sendiri mengelompokan tipe data kedalam 2 jenis yaitu tipe data primitive dan tipe data object.

Tipe Data Primitive

Tipe data primitive merupakan tipe data yang bersifat immutable, artinya dalam tipe data jenis ini nilai tidak dapat dirubah atau di manipulasi. Tipe data primitive memiliki 7 jenis tipe data diantaranya:

1. Boolean

Tipe data boolean mengambarkan entitas logika, boolean hanya memiliki 2 kondisi yaitu true dan false. Perhatikan kode berikut ini

2. String Literal

String atau dapat disebut dengan string literal adalah tipe data yang merepresentasikan data yang bersifat textual. Penulisan tipe data jenis ini dengan menggunakan singgle quote (‘’) atau dapat juga menggunakan double quote (“”). Tentunya terdapat perbedaan dari penulisan singgle quote dengan double quote. Dengan penulisan menggunakan singgle quote anda dapat menggunakan backslash (\) untuk menampilkan karakter tertentu. Seperti jika anda ingin menuliskan petik tunggal (singgle quote) pada value string anda. Tipe data string dapat dilakukan penggabungan terhadap nilai-nilai string lainnya. penggabungan tersebut dapat diimplementasikan dengan menggunakan concatenation operator (+) terhadap string yang ingin digabungkan.

3. Number

Apabila value berupa angka maka javascript akan menggap ini sebagai tipe data number baik angka tersebut desimal (interger) atau pecahan (float).

4. Bigint

Sesuai dengan namanya bigint artinya bilangan decimal yang besar. Bigint adalah integer presisi yang mampu mewakili bilangan bulat uang lebih besar dari 253 -1. Jika hanya mengandalkan tipe dataa number/integer maka maksimal penggunaan 9007199254740992. Apabila jumlahnya melebihi dari 9007199254740992, integer tidak support. Perhatikan kode dibawah ini. Mudahnya untuk memahami perintah Number.MAX_SAFE_INTEGER adalah menampilkan batas maksimal number, sehingga ouput yang dihasilkan 9007199254740991. Sedangkan bila number melebihi batas maksimal 9007199254740992 ini dikarenakan tipe data number mengunci nilai Number.MAX_SAFE_INTEGER + 1, Dan bila batas maksimal di tambah lebih dari 1 (satu), maka komputer akan tetap menampilkan Number.MAX_SAFE_INTEGER + 1 atau 9007199254740992. Pada kasus diatas kita memerlukan fungsi BigInt() untuk menangani permasalahan tersebut. Dan cara menggunakan bigint dapat melalui fungsi BigInt() atau juga menambahkan (n) pada akhir value. Perhatikan kode berikut ini

5. Symbol

Tipe data symbol diperkenalkan oleh ES6, symbol merupakan tipe data primitive yang bersifat immutable(tidak dapat berubah). Setiap tipe data symbol akan mengembalikan dengan nilai Symbol() karena penggunaan tipe data ini menggunakan fungsi Symbol(). Karean tujuan dari penggunaan fungsi symbol adalah untuk melakukan identifikasi property pada objek dikarenakan tipe data symbol bersifat unik.

Syntak Symbol.

Symbol([deskripsi]) Keterangan: Deskripsi besifat optional, deskripsi digunakan pada saat debugging, karena kita tidak dapat mengakses nilai pada symbol. Symbol memiliki ciri yaitu tidak dapat di konversi dalam sebagai string. Meskipun hampir semua tipe data mendukung secara implisit untuk di konversi sebagai string dengan bantuan fungsi alert() akan tetapi Symbol tidak dapatmelakukannya. Jika tetap ingin menampilkan symbol sebagai string maka kita harus menggunakan fungsi toString() atau kita juga dapat menggunakan symbol.description untuk mendapatkan deskripsi dari symbol.

6. Null

Null yaitu merepresentasikan nilai kosong/tidak ada nilai sama sekali. berbeda apabila anda menuliskan string kosong untuk mendefenisikan variable. javascript akan tetap menganggap bahwa variable tersebut bernilai string. Pemberian nilai null dilakukan secara sengaja, yang bertujuan untuk mendefenisikan variable tanpa nilai atau kosong. Baris kode terakhir menunjukan bahwa null bertipe object. Ini merupakan warisan kesalahan saat awal pengembangan javascript. meskipun saya merasa penggunaan null jarang digunakan saat produksi, namun kita perlu untuk mengetahui tipe data yang satu ini.

7. Undefined

Mudahnya untuk memahami undefined yaitu variable yang belum didefenisikan atau tidak diberi nilai. Perhatikan kode berikut ini. Undefined biasanya ada akibat kelalaian atau kesalahan dari programmer dalam menulis kode. penulisan undefined juga bisa dilakukan secara eksplisit seperti. Namun sebaiknya anda tidak melakukan hal ini dalam menulis kode program, karna menurut saya memang tidak ada gunanya.

Tipe Data Object

Tipe data object adalah tipe data yang bersifat mutable, artinya data ini dapat dimanupulasi berdasarkan method yang disediakan oleh tipe data ini. klasifikasi tipe data object dibagi menjadi dua yaitu Function, Array dan Object. dikarenakan pembahasan tentang function, array dan objek sangat penting dan pembahasannya cukup panjang, kami akan membahasnya pada bab terpisah secara khusus.

  Sumber: Tipe Data