Mengenal Tipe Data dan Operator Angka (Number) JavaScript

Tipe data Angka dalam JavaScript
Tidak seperti bahasa pemograman lain pada umumnya, JavaScript tidak membedakan tipe data angka (number) antara angka bulat dengan angka desimal, atau tidak membedakan antara bilangan integer dengan float. Seluruh tipe data angka di dalam JavaScript disimpan dalam bentuk desimal (float).

Jangkauan tipe data angka di dalam JavaScript merujuk kepada aturan standar IEEE 754 yang mencakup angka paling kecil ±5 × 10^-324 dan angka paling tinggi ±1.7976931348623157 × 10^308.


Angka di dalam JavaScript bisa dengan tepat merepresentasikan nilai antara −2^53 sampai dengan 2^53, atau dari −9007199254740992 sampai 9007199254740992. Jika anda menggunakan nilai yang lebih besar dari jangkauan ini, maka akan mengorbankan tingkat ketelitian.

Cara Membuat Tipe Data Angka
Karena di dalam JavaScript sebuah variabel tidak perlu di deklarasikan akan bertipe apa, maka jika sebuah variabel diberikan nilai angka, maka variabel tersebut telah menjadi variabel dengan tipe angka. Berikut adalah contohnya:

<script>
var a=12; // deklarasi dengan var
b=6; // deklarasi tanpa keyword var
</script>
Operator Aritmatika di dalam JavaScript
Operasi yang sering digunakan untuk tipe data angka adalah operasi artimatika seperti penambahan (+), pengurangan (-), pembagian (/), perkalian (*), dan modulus atau sisa hasil bagi (%).

Urutan Prioritas Operator Aritmatika
Sama seperti pelajaran matematika yang kita pelajari, di dalam JavaScript operator perkalian dan pembagian lebih kuat dari pada operator penambahan dan pengurangan. Perintah operasi 1 + 3 * 5 akan proses oleh JavaScript menjadi 1 + (3 * 5). Operasi modulus (sisa hasil bagi) juga sama kuat dengan operasi perkalian dan pembagian.

Jika operasi matematika yang akan diproses memiliki lebih dari 1 operator yang sama kuat dalam sebuah perhitungan, JavaScript akan memprioritaskan urutan perhitungan dari kiri ke kanan. Operasi 3 * 4 / 5 *5 akan dikerjakan menjadi: (((3 * 4) / 5) * 5).

Untuk membuat prioritas suatu operasi menjadi lebih tinggi, kita bisa menambahkan tanda kurung didalam program. Penggunaan tanda kurung juga akan mempermudah pembacaan program. Walaupun kita bisa menebak bagaimana operasi 5 + 3 * 2 akan diproses, namun akan lebih mudah di baca jika operasi tersebut tetap dibuat dengan menambahkan tanda kurung menjadi 5 + (3 * 2).

Berikut adalah contoh kode program cara penggunaan tipe data angka dan operasi matematis dalam JavaScript:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Belajar JavaScript</title>
 
<script>
   var a = 12;
   var b = 4;
   var c = 2;
   console.log(a);       // hasil: 12
   console.log(b);       // hasil: 4
   console.log(c);       // hasil: 2
 
   var d = a + b;
   console.log(d);       // hasil: 16
   var e = b * 5;
   console.log(e);       // hasil: 20
   var f = a % 5;
   console.log(f);       // hasil: 2
   var g = 3 + 6 * 2;
   console.log(g);       // hasil: 15
   var h = c + b * a % 3;
   console.log(h);       // hasil: 2
   var i = 3 * 4 / 5 * 5;
   console.log(i);       // hasil: 12
   var j = (((3 * 4) / 5) * 5);
   console.log(j);       // hasil: 12
</script>
 
</head>
<body>
<h1>Belajar JavaScript</h1>
<p> Saya sedang belajar Tipe Data Angka JavaScript </p>
</body>
</html>

Pada awal kode JavaScript diatas (yang dimulai dari baris ke-8), saya membuat 3 buah variabel, yakni variabel a, b dan c. Pada saat pendefenisian variabel ini, saya juga langsung memberikan nilai awal. Perintah console.log selanjutnya akan menampilkan isi dari ketiga variabel ini.

Karena variabel di dalam JavaScript tidak memiliki tipe dasar, dengan memberikan nilai awal berupa angka (number), maka variabel tersebut akan bertipe data number.

Setelah mendefenisikan beberapa variabel, selanjutnya saya melakukan operasi-operasi sederhana seperti penambahan, pengurangan, dan juga modulus. Dalam 3 contoh operasi terakhir, kita bisa melihat bagaimana JavaScript menangani perintah matematis berdasarkan urutan ‘kekuatan’ operator.

Previous
Next Post »