Tipe data dan variabel merupakan dua hal yang selalu ada di dalam setiap bahasa pemrograman, apapun bahasa pemrogramannya. Bagi kita yang sudah pernah belajar bahasa pemrograman sebelumnya tentu tidak asing mendengar istilah variabel dan tipe data ini. Tapi tentunya setiap bahasa pemrograman punya caranya sendiri untuk mendeklarasikan variabel ataupun tipe data.
Kali ini kita akan melihat bagaimana variabel dan tipe data di dalam bahasa pemrograman Javascript.
1. Variabel
Sebelumnya kita telah belajar bagaimana menampilkan pesan di console pada browser, penggunaan variable akan sangat membantu ketika kita ingin menampilkan pesan ke layar ataupun melakukan operasi matematika. Variabel biasanya digunakan untuk menyimpan data atau nilai yang akan digunakan atau proses oleh program.
Di dalam bahasa pemrograman Javascript ada tiga cara untuk mendeklarasikan sebuah variable, yaitu menggunakan sintaks var
, let
dan const
. Tetapi ketika ES6 dirilis sintaks var
sudah tidak disarankan lagi untuk digunakan karena dinilai rawan terjadi bug, lebih jelasnya kamu dapat membaca disini kenapa var tidak disarankan untuk digunakan.
Sebuah variabel di dalam Javascript dibuat dengan menggunakan sintaks let
atau const
dan diikuti dengan nama variabelnya.
// membuat variable name dengan sintaks let
let name;
// membuat variabel date dengan sintaks const
const date;
Kita mendeklarasikan variabel pada kode di atas, pendeklarasian ini juga disebut dengan istilah declaration statement. Ketika kita ingin memberikan data atau nilai pada variabel yang telah kita buat maka kita dapat menambahkan tanda =
dan diikut dengan nilai yang diinginkan. Proses memasukkan nilai ke dalam variabel ini disebut juga dengan assignment expression
.
// mendeklarasikan variabel name dengan nilai "Depot Kode"
let name = "Depot Kode";
console.log(name)
// mengubah nilai variabel name manjadi "depot kode"
name = "depot kode";
console.log(name)
const date = "2023-11-23";
console.log(date)
/*
* Output:
* Depot Kode
* depot kode
* 2023-11-23
* */
Setiap variable memiliki nama yang dapat kita panggil kembali kapanpun, penamaan variabel ini tentunya dengan kebutuhan kita dan sesuka kita. Penamaan variabel haruslah sesuai fungsinya agar kode kita nantinya mudah dimengerti dan tidak menimbulkan kebingungan dikemudian hari.
Berikut beberapa aturan dalam penamaan variabel:
- Harus diawali dengan huruf atau garis bawah (
_
). - Nama variabel dapat tersusun dari huruf, angka dan
_
. - Nama variabel tidak boleh ada spasi.
- Tidak boleh ada karakter spesial (
! . , / \ + * =
dll)
Apa dong perbedaan variabel yang dibuat menggunakan let
dan const
???
Const adalah kependekan dari constant, yang memiliki makna tetap atau tidak berubah. Ketika kita mendeklarasikan variabel menggunakan kata kunci const
maka kita tidak dapat mengubah nilai dari variabel tersebut, berbeda dengan let
kita dapat mengubahnya kapanpun sesuka hati.
Kita dapat menggunakan const di dalam Javascript ketika kita menginginkan nilai dari variabel tersebut tidak dapat berubah ataupun diubah.
Gambar di atas merupakan ilustrasi dari let dan const. Dimana const diibaratkan sebagai toples yang sudah ditutup rapat dan di segel sehingga kita tidak dapat mengubah isi toplesnya. Ketika kita mencoba mengubah nilai dari const maka akan terjadi error.
const date = '2023-11-23';
date = '2023-11-22';
console.log(date);
Outputnya adalah:
TypeError: Assignment to constant variable.
2. Tipe Data
Tipe ada adalah pengelompokan data atau nilai yang bisa kita simpan ke dalam variabel berdasarkan jenisnya. Javascript merupakan bahasa yang bersifat dynamic typing, artinya kita tidak harus menuliskan tipe datanya pada saat mendeklarasikan sebuah variabel. Javascript akan secara otomatis mengenali tipe data yang dimasukkan ke dalam variabel.
Berikut beberapa tipe data yang ada di dalam bahasa pemrograman Javascript.
- Number
- String
- Boolean
- BigInt
- Undefined
- Null
- Symbol
- NaN
Untuk melihat tipe data dari sebuah variabel kita dapat menggunakan fungsi typeof()
pada Javascript.
2.1 Number
Number merupakan tipe data yang berupa angka. Tidak seperti bahasa lainnya, di dalam Javascript tidak ada tipe data integer, float, short ataupun long, hanya ada Number.
let age = 10;
console.log(typeof(age))
// Output: number
Jika kita ingin mendeklarasikan sebuah bilangan desimal cukup tambahkan tanda titik sebelum pecahan desimalnya.
let weight = 15.5
console.log(typeof(weight))
// Output: number
2.2 String
String merupakan tipe data yang berupa sebuah teks, baik itu kata ataupun kalimat. Tipe data string dibuat menggunakan tanda petik satu '
atau bisa juga menggunakan tanda petik dua "
.
let name = "Depot Kode";
console.log(typeof(name))
// Output: string
Menggunakan tanda '
ataupun "
keduanya sama saja, tidak ada perbedaan yang dihasilkan. Kita dapat menggunakannya tergantung pada teks yang kita miliki.
// Akan error ketika menggunakan ' karena teks mengandung '
let message = 'don't go';
console.log(message)
// Output: SyntaxError: Unexpected identifier
// Tidak akan error jika kita menggunakan "
let message = "don't go"
console.log(message)
// Output: don't go
Ketika teks mengandung karakter spesial kita dapat menggunakan tanda \
untuk memberitahu komputer agar karakter tersebut dianggap sebagai string biasa. Metode ini dinamakan escape string.
// Akan error ketika menggunakan ' karena teks mengandung '
let message = 'don't go';
console.log(message)
// Output: SyntaxError: Unexpected identifier
// Tidak akan error karena string di escape
let message = 'don\'t go';
console.log(message)
// Output: don't go
2.3 Boolean
Seperti pada bahasa pemrograman lainnya, tipe data Boolean hanya berisi nilai true
atau false
. Penggunaan tipe data boolean untuk penentuan kondisi atau logika. Nantinya kita akan sering menggunakan tipe data boolean ini pada materi percabangan.
// Boolean bernilai true
let active = true;
// Boolean bernilai false
let show = false;
console.log(typeof(active));
console.log(typeof(show));
/*
* Output: boolean
* Output: boolean
* */
2.4 BigInt
Di Javascript, tipe data number hanya dapat menampung nilai dari -(2{{< sup "53" >}} - 1)
hingga (2{{< sup "53" >}} - 1)
. Sebenarnya tipe data number sudah mencukupi untuk menampung nilai untuk kebutuhan umum. Namun, ada beberapa kondisi yang dimana dibutuhkan nilai yang sangat besar seperti untuk kebutuhan kriptografi atau sebagainya, walaupun sebenarnya tipe data ini jarang digunakan.
Oleh karena itu, tipe data BigInt menjadi solusinya untuk menampung nilai yang sangat besar. Tipe data BigInt dibuat dengan menambahkan n
di akhir nilainya.
let bigInt = 123456789012345678901234567890n;
console.log(typeof(bigInt));
// Output: bigint
Walaupun tipe data BigInt digunakan untuk menampung nilai yang besar bukan berarti tidak bisa menampung nilai yang kecil ya, tetap bisa kok hehehe...
let smallBigInt = 1n;
console.log(typeof(smallBigInt));
// Output: bigint
2.5 Undefined
Tipe data undefined ada ketika mendeklarasikan sebuah variabel di Javascript tanpa memberikan sebuah nilai. Ketika kita mendeklarasikan sebuah variabel tanpa nilai maka otomatis variabel tersebut menjadi undefined.
let name;
console.log(typeof(name));
// Output: undefined
Atau kita bisa juga memberikan nilai undefined
ke dalam sebuah variabel.
let name = "Depot Kode";
console.log(typeof(name));
// Output: string
name = undefined
console.log(typeof(name));
// Output: undefined
2.6 Null
Tipe data Null, serupa dengan Undefined, namun untuk membuat tipe data null kita harus memberikan nilai null
pada sebuah variabel. Null biasanya digunakan sebagai nilai sementara pada sebuah variabel.
Terkadang kita butuh membuat sebuah variabel, tapi kita belum melakukan apa-apa dan tidak terikat dengan tipe data apapun, daripada kita membiarkan variabel tersebut kosong biasanya kita akan memberikan nilai null
pada variabel tersebut.
let age = null;
console.log(age);
// Output: null
2.7 Symbol
Ketika ES6 dirilis, pada saat itu pula tipe data Symbol dikenalkan. Tipe data Symbol digunakan untuk menunjukkan identifier yang unik. Symbol umumnya digunakan sebagai nama property dari Object.
const id = Symbol("id");
console.log(typeof(id));
console.log(id);
/*
* Output
* symbol
* Symbol(id)
* */
2.8 NaN
Tipe data NaN (Not a Number) digunakan untuk merepresentasikan sebuah kesalahan. Kesalahan dalam perhitungan, hal ini biasanya terjadi karena ada perbedaan tipe data.
let result = 1 * "a";
console.log(result);
// Output: NaN
Kesimpulan
Itulah sedikit pembahasan terkait variabel dan beberapa tipe data yang ada di dalam Javascript. Ketika kita membuat sebuah projek ataupun program tentunya kita akan sangat banyak menggunakan variabel serta tipe datanya. Oleh karena itu penting bagi kita untuk memahami bagaimana cara membuat variabel dan apa saja tipe data yang ada.
Terimakasih dan semangat terus untuk belajar, kita akan berjumpa lagi di artikel selanjutnya terkait Javascript. 😄