
Bilmeniz Gereken Güncel JavaScript Özellikleri!
İçindekiler
Sayısal Ayıraç
Uzun sayısal verileri ilk baktığımızda anlamak biraz zor oluyor. Sayısal ayıraç, sayıların hanelerinin arasına alt çizgiler ekleyerek okunması daha kolay hale getirmemizi sağlar.
let deger1 = 250000000;
let deger2 = 250_000_000; //ayni deger alt ayirac olmadan 250000000 olur.
Kodun çalışma zamanında alt çizgiler editör tarafından göz ardı edilir.
Nullish Coalescing (Null Kontrol Operatörü)
Nullish Coalescing operatörü(??), iki değişken karşılaştırılırken;
- Değeri null veya undefined olmayan değişkeni döndürür.
- Karşılaştırılan iki değişken de null veya undefined değerlere sahip değil ise soldaki değişkeni döndürür.
Syntax’ı solDegisken ?? sagDegisken şeklindedir.
let sayi1 = 0;
let sonuc1 = count1 ?? 1;
console.log(sonuc1); //kodun ciktisi = 0
let sayi2 = null;
let sonuc2 = count2 ?? 1;
console.log(sonuc2); //kodun ciktisi = 1
Nullish Coalescing operatörü, bir değişkene default değer vermek istediğinizde mantıksal veya(||) seçeneğine göre daha kullanışlıdır çünkü mantıksal veya(||) bazı istenilmeyen davranışlar gösterebilir.
BigInt
JavaScript, depolayabileceğiniz en büyük değer olarak, 2^53-1 büyüklüğüne sahipti. BigInt ile artık bu değerden daha büyük değerler depolama olanığına sahipsiniz.
BigInt, BigInt() kurucu metotu çağrılmasıyla normal integer değerlerinin sonuna n ekleyerek oluşturulur.
const Bigint = 123456789012345678901234567890123456789n;
const ayniBigint = Bigint("123456789012345678901234567890n");
const BigintSayidan = Bigint(10); //10n ile ayni
Opsiyonel Zincirleme
Opsiyonel zincirleme operatörü, null ve undefined değerlerin özelliklerine exception almadan erişmemizi sağlar. Ayrıca iç içe oluşturulmuş objelerin oluşturulmamış özelliklerine de(instant değer) erişmemizi sağlar.
const kullanici = {
kopek: {
name: "boncuk"
}
};
console.log(kullanici.kedi?.isim); //undefined
console.log(kullanici.kopek?.isim); // boncuk
Promise.any()
Promise.any() yenilenebilir promise objeleri alır ve bu promise’leri birleştirerek; yenilenebilir tek bir promise objesi döndürür.

const promise1 = /*kod bloklari*/;
const promise2 = /*kod bloklari*/;
const promise3 = /*kod bloklari*/;
const promises = [promise1, promise2, promise3];
promise.any(promises).then((deger)=>console.log(deger));