Apps Artificial Intelligence CSS DevOps Go JavaScript Laravel Linux MongoDB MySQL PHP Python Rust Vue

JavaScript BigInt: Handling Large Integers

1 min read .
JavaScript BigInt: Handling Large Integers

JavaScript Number memiliki batas aman (2^53 - 1) untuk integer. Kalau kamu butuh angka lebih besar atau presisi tinggi, BigInt solusinya.

1. Membuat BigInt

const bigNumber1 = 123456789012345678901234567890n; // literal
const bigNumber2 = BigInt("123456789012345678901234567890"); // constructor

2. Operasi Dasar

BigInt mendukung operasi aritmatika:

const a = 12345678901234567890n;
const b = 98765432109876543210n;

console.log(a + b); // 111111111011111111100n
console.log(b / a); // 5n (dibulatkan ke nol)

3. Perbandingan

console.log(1000n < 2000n);  // true
console.log(1000n === 1000n); // true

4. Konversi dengan Number

const num = 42;
const bigIntFromNum = BigInt(num); // 42n
const bigIntVal = 12345678901234567890n;
const numberVal = Number(bigIntVal); // Hati-hati, bisa kehilangan presisi

5. Hal yang Perlu Diperhatikan

  • Tidak bisa dicampur langsung dengan Number: konversi harus eksplisit.
  • Operasi lebih lambat dibanding Number.
  • JSON: gunakan toString() sebelum serialisasi.
JSON.stringify({ value: 9007199254740991n.toString() }); 
// '{"value":"9007199254740991"}'

6. Kapan Gunakan BigInt?

  • Kriptografi
  • Komputasi ilmiah dengan angka besar
  • Aplikasi finansial untuk angka presisi tinggi

7. Dukungan Browser

Didukung di Chrome 67+, Firefox 68+, Safari 14+, Edge 79+. Tidak ada di Internet Explorer.

Kesimpulan

BigInt memungkinkan manipulasi integer besar tanpa kehilangan presisi. Penting untuk kripto, sains, dan aplikasi finansial yang butuh angka super besar.

Lihat Juga

chevron-up