Tutorial Belajar JavaScript Bagian 9 : Tipe Data Number JavaScript

Pada tutorial sebelumnya, kita sudah belajar Tutorial Belajar JavaScript Bagian 5 : Jenis-jenis Tipe Data JavaScript. Dalam tutorial ini, kita akan belajar tentang tipe data Number yang berikan angka dan cara menggunakannya secara efektif.

Pengantar Number Dalam JavaScript

JavaScript menggunakan tipe angka untuk mewakili bilangan bulat dan nilai floating-point. Secara teknis, tipe angka JavaScript menggunakan format IEEE-754.

ES2020 memperkenalkan bigint tipe primitif baru yang mewakili bilangan bulat besar dengan nilai lebih besar dari 253 – 1.

Untuk mendukung berbagai jenis angka, JavaScript menggunakan format literal angka yang berbeda.

Integer Number (Bilangan bulat)

Berikut ini menunjukkan cara mendeklarasikan variabel yang menyimpan bilangan bulat desimal:

let counter = 100;

Bilangan bulat dapat direpresentasikan dalam format berikut:

  • Oktal (basis 8)
  • Heksadesimal (berdasarkan 16)

Saat Anda menggunakan angka oktal dan heksadesimal dalam operasi aritmatika, JavaScript memperlakukannya sebagai angka desimal.

Bilangan Oktal

Angka literal oktal dimulai dengan digit nol (0) diikuti dengan urutan digit oktal (angka dari 0 hingga 7). Sebagai contoh :

let num = 071;
console.log(num);

Hasil :

Jika angka oktal berisi angka yang tidak berkisar dari 0 hingga 7, mesin JavaScript akan mengabaikan 0 dan memperlakukan angka tersebut sebagai desimal. Sebagai contoh :

let num = 080;
console.log(num);

Hasil :

Perilaku implisit ini dapat menyebabkan masalah. Oleh karena itu, ES6 memperkenalkan literal oktal baru yang dimulai dengan 0o diikuti dengan urutan digit oktal (dari 0 hingga 7). Sebagai contoh:

let num = 0o71;
console.log(num);

Hasil :

Jika Anda menulis angka yang tidak valid setelah 0o, JavaScript akan mengeluarkan kesalahan sintaksis seperti ini:

let num = 0o80;
console.log(num);

Hasil :

Bilangan Heksadesimal

Angka heksadesimal dimulai dengan 0x atau 0X diikuti dengan sejumlah digit heksadesimal (0 hingga 9, dan a hingga f). Sebagai contoh:

let num = 0x1a;
console.log(num);

Hasil :

Bilangan Floating-point

Untuk menentukan angka literal floating-point, Anda menambahkan titik desimal dan setidaknya satu angka setelahnya. Sebagai contoh:

let harga = 9,99;
let pajak = 0,08;
let diskon = 0,05; // valid but not recommended

Ketika Anda memiliki jumlah angka yang sangat besar, Anda dapat menggunakan e-notasi. E-notasi menunjukkan angka harus dikalikan dengan 10 dipangkatkan. Sebagai contoh:

let jumlah = 3.14e7;
console.log(jumlah);

Hasil :

31400000

Notasi 3.14e7 berarti ambil 3.14 dan kalikan dengan 10 pangkat 7.

Demikian pula, Anda dapat menggunakan notasi-E untuk mewakili angka yang sangat kecil. Sebagai contoh:

let jumlah = 5e-7;
console.log(jumlah);

Hasil :

0,0000005

Notasi 5e-7 berarti mengambil 5 dan membaginya dengan 10.000.000.

Selain itu, JavaScript secara otomatis mengonversi bilangan floating-point apa pun dengan setidaknya enam angka nol setelah titik desimal menjadi notasi-e. Sebagai contoh:

let jumlah = 0,0000005;
console.log(jumlah);

Hasil :

5e-7

Angka floating-point akurat hingga 17 tempat desimal. Saat Anda melakukan operasi aritmatika pada bilangan floating-point, Anda sering mendapatkan hasil perkiraan. Sebagai contoh:

let jumlah = 0,2 + 0,1;
console.log(jumlah);

Hasil :

0,300000000000000004

Big Integers (Bilangan Bulat Besar)

JavaScript memperkenalkan tipe bigint mulai dari ES2022. Tipe bigint menyimpan bilangan bulat yang nilainya lebih besar dari 253 – 1.

Literal bilangan bulat besar memiliki n karakter di akhir literal bilangan bulat seperti ini:

let pageView = 9007199254740991n;

Kesimpulan

Jenis Number JavaScript mewakili bilangan integer dan floating-point. Itu dia penjelasan tentang tipe data number JavaScript, semoga bisa membantu Anda dalam memahami bahasa pemprograman JavaScript.

You May Also Like

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

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

0