SESI 9 - TIPE DATA : ANGKA JAVASCRIPT

September 04, 2018 by

"Numbers in javascript are double-precision, floating point 64-bit format IEEE 754 value."
+ Di dalam Javascript tidak ada integer (bilanga bulat) hanya ada floating point.
+ Ukuran angka yang bisa disimpan Javascript yaitu 64-bit = 18 x 10^18 = 18446744073709551616 (angka ini tidak bisa dipakai semua). Karena di dalam 64-bit tadi ada beberapa penanda yang nanti harus menampung angka-angka tertentu.
Ada beberapa jenis angka yang disimpan dalam Javascript :
1. Angka tanpa desimal (integer) = 10, 15, 123 (tingkat akurasinya hanya 15 digit)

2. Angka dengan desimal = 3.14 , 0.5 , 100.00 dengan akurasi sampai 17 digit dibelakang koma, pemjumlahan pecahan misal 0.2 + 0.1 = 0.30000000004 , jadi sebetulnya ada bilangan yang cukup kecil sehingga tidak bulat 0.3
3. Eksponen → 123e5 // 12300000, 123e-5 // 0.00123

4. Bilangan negatif → -23, -1,-0.5 dst.

Jadi, 64-bit tadi tidak hanya bisa untuk menampung bilangan bulat positif saja tetapi banyak hal yang bisa kita gunakan. Dan urutan bit penggunaannya bisa seperti ini.
+ Satu bit sebagai penanda jika bilangannya negatif
+ Sebelas bit untuk eksponen
+ Sisanya digunakan untuk angka sebenarnya, termasuk untuk menyimpan titik (.) untuk pecahan.
NB: Jangan pernah mengawali angka Javascript dengan angka nol untuk bilangan bulat positif, karena bisa tidak sesuai dengan keadaan yang kita minta. 

Contoh: 
       022 hasil di console nanti menjadi 18. Karena dengan menulis angka nol diawal angka, bilngan kita akan dianggap sebagai bilangan oktal (berbasis 8) bukan bilangan desimal (0-9). Bilangan oktal yaitu bilangan dari 0-7.
        0x // 0xFF(255) → javascript menganggap sebagai bilangan hexadecimal (basis 16) dari 0-9, A-F.
Angka spesial pada Javascript 

contoh:
Infinity → 2/0
Minus (-) infinity → -2/0
Not a Number (NaN)→ 0/0 ; 2/"teks"
!!! HATI HATI ketika membagi angka dengan string yang didalamnya adalah angka, misal 100/"10" maka javascript akan membaca hal itu sebagai angka dan akan melakukan proses perhitungan sebagaimana angka. !!!

0 comments:

Post a Comment