Şimdi yükleniyor

JavaScript BigInt Nedir? Büyük Sayılarla Çalışmanın Yeni Yolu

JavaScript’te büyük sayılarla işlem yapmak her zaman kolay olmamıştır. Standart sayısal veri türü olan Number, güvenilir bir doğrulukla 2^53-1 ile -2^53+1 arasındaki sayılarla çalışır. Bu sınırı aşan sayılar için doğruluğun korunması zordur ve yuvarlanmalar yaşanabilir. BigInt ise JavaScript’in büyük sayılarla, yani 2^53-1 sınırını aşan sayılarla güvenli bir şekilde işlem yapmamızı sağlayan yeni bir veri türüdür.

BigInt Nasıl Kullanılır?

BigInt kullanmak oldukça basittir. Bir sayıyı BigInt olarak tanımlamak için sayının sonuna n harfi eklenir ya da BigInt() fonksiyonu kullanılır. İşte örnek bir kullanım:

// BigInt tanımlama yolları
const bigNumber1 = 123456789012345678901234567890n;
const bigNumber2 = BigInt("123456789012345678901234567890");

// Çarpma işlemi
const result = bigNumber1 * bigNumber2;
console.log(result);

Yukarıdaki örnekte, büyük sayıların Number veri türüyle işlem yapılırken oluşabilecek doğruluk sorunları, BigInt ile ortadan kalkar.

BigInt Özellikleri ve Avantajları

  1. Büyük Sayılarla Doğru Sonuçlar: Büyük sayı işlemlerinde doğruluğu korur ve güvenli sonuçlar üretir.
  2. Tam Sayı Hassasiyeti: Kesirli sayı işlemlerine izin vermez, bu nedenle parasal hesaplamalar gibi tam sayı gerektiren işlemler için idealdir.
  3. Yüksek Performans: Büyük sayıları işlemede Number veri türünden daha iyi bir performans sunar.

BigInt ile İşlem Yaparken Dikkat Edilmesi Gerekenler

  • Number ile Doğrudan İşlem Yapılamaz: BigInt ve Number veri türleri doğrudan birlikte işleme alınamaz. İki tür arasında işlem yapmak için Number veya BigInt tür dönüşümü gerekir.
const bigIntNum = 100n;
const regularNum = 50;

// Bu işlem hata verir
// const result = bigIntNum + regularNum;

// Çözüm
const result = bigIntNum + BigInt(regularNum);
console.log(result); // 150n
  • Kesirli Sayılar Desteklenmez: BigInt yalnızca tam sayılarla çalışır. Kesirli veya ondalıklı sayı içerdiğinde hata verir.
  • Math Metodlarıyla Uyumsuzdur: JavaScript’in Math kütüphanesindeki fonksiyonlar BigInt ile çalışmaz. Math.sqrt() gibi işlemler için dönüşüm yapılması gerekir.

BigInt Kullanım Senaryoları

  • Kriptografi: Kriptografik işlemlerde büyük sayılar kullanılır ve doğruluğun korunması önemlidir.
  • Finansal Hesaplamalar: Finansal işlemler genellikle tam sayılarla çalışır ve büyük rakamlarla yapılan işlemler BigInt ile güvenli hale gelir.
  • Bilimsel Hesaplamalar: Özellikle astronomi, genetik ve fizik gibi alanlarda büyük sayılarla yapılan işlemler için BigInt idealdir.

Share this content:

Yorum gönder