Bir JavaScript Date nesnesine nasıl X gün ekleyebilirim?

Bir JavaScript Date nesnesine nasıl X gün ekleyebilirim?

JavaScript’in en kötü yanlarından biri tarih ve saat yapıları olmuştur. Birçok tarih işleme görevi için Datejs/Moment.js’yi yıllarca kullanmak zorunda kaldıktan sonra, yerel Date yapıcısının neredeyse her zaman yeterince iyi olduğunu ve indirmek için birçok değerli bayt tasarrufu sağladığını giderek daha fazla keşfettim.

JavaScript’te, yerleşik taşma özelliklerini kullanarak bir Date nesnesine X gün ekleyebilirsiniz. Bir Date nesnesine 100 gün eklerseniz, bu 100 güne göre geçerli bir tarih ofseti üretmek için ayı veya hatta yılı otomatik olarak artırır.

const date = new Date('2022-02-02');
console.log(date);


date.setDate(date.getDate() + 100);
console.log(date);

Serin!

Aynı teknik, milisaniyelerden aylara kadar tüm diğer tarih özellikleriyle de iyi çalışır. 🙂

Zamanda geriye gitmek için de kullanabilirsiniz:

const date = new Date('2022-02-02');
console.log(date);


date.setMonth(date.getMonth() + 6);
console.log(date);

NOT: Burada bir uyarı var, getMonth/setMonth ay sayıları (0-11) için 0 indeksleme kullanıyor, dolayısıyla Ocak 0, 11 Aralık vb.

Tarih ve saat için sırada ne var?

Çalışmakta olan yeni bir Temporal API var, ancak şimdilik, tarayıcıların hiçbiri henüz bunu desteklemiyor: https://caniuse.com/?search=temporal

Yeni standardı uygulayan çoklu dolguların, API modern tarayıcılarda kullanılabilir hale gelene kadar oluşturulabilmesi için, spesifikasyonun yakında nihai hale getirilebileceği konusunda parmaklar geçti.

Gitti zamanın izini kaybetme korkusu!

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.