Softmush.com, teknoloji, yazılım ve dijital dünyaya dair derinlemesine içeriklerle bilgiye ulaşmanın güvenilir adresi. - Softmush.com
“ Söz konusu olan vatansa, gerisi teferruat. ”
Mustafa K. Atatürk
JavaScript Dilinde JS Dates Kullanımı

JavaScript Dilinde JS Dates Kullanımı

JavaScript'te tarih ve saat verilerini yönetmek, görüntülemek ve üzerinde işlem yapmak için yerleşik Date nesnesi kullanılır. Bu nesne, milisaniyeler cinsinden zamanı temsil eder ve 1 Ocak 1970 UTC (Evrensel Eşgüdümlü Saat) tarihinden bu yana geçen süreyi temel alır. Date nesnesi ile mevcut tarihi ve saati alabilir, belirli bir tarihi oluşturabilir, tarih bileşenlerini değiştirebilir ve farklı formatlarda görüntüleyebilirsiniz.


Sözdizimi


Date nesnesi, new Date() yapıcı fonksiyonu kullanılarak dört farklı şekilde oluşturulabilir:


  • new Date(): Mevcut tarih ve saati içeren bir Date nesnesi oluşturur.

  • new Date(milisaniye): 1 Ocak 1970 UTC'den bu yana geçen milisaniye sayısını temsil eden bir Date nesnesi oluşturur.

  • new Date(tarihDizisi): Bir tarih dizisini (örneğin, "2023-10-26" veya "October 26, 2023 10:30:00") ayrıştırarak bir Date nesnesi oluşturur.

  • new Date(yıl, ay, gün, saat, dakika, saniye, milisaniye): Belirli tarih ve saat bileşenleriyle bir Date nesnesi oluşturur. Ay değeri 0'dan (Ocak) 11'e (Aralık) kadar indeklenmiştir.


Detaylı Açıklama


Date nesnesinin yapıcı fonksiyonları ve yöntemleri, tarih ve saat manipülasyonu için güçlü araçlar sunar:


  • new Date(): Argüman olmadan çağrıldığında, Date nesnesi, komutun çalıştırıldığı yerel sistemin mevcut tarih ve saatini temsil eder.

  • new Date(milisaniye): Bu yapıcı, new Date(0) ile 1 Ocak 1970 UTC başlangıcını temsil eder. Pozitif değerler bu tarihten sonrasını, negatif değerler ise öncesini ifade eder. Örneğin, new Date(86400000) 1 Ocak 1970 UTC'den 24 saat sonrasını temsil eder.

  • new Date(tarihDizisi): JavaScript, çeşitli ISO 8601 formatlarını (örneğin, "YYYY-MM-DD", "YYYY-MM-DDTHH:mm:ssZ") ve tarayıcıya özgü bazı diğer tarih dizisi formatlarını ayrıştırabilir. Ancak, tarayıcılar arası tutarlılık için ISO 8601 formatları tercih edilmelidir.

  • new Date(yıl, ay, gün, saat, dakika, saniye, milisaniye): Bu yapıcı, tarih bileşenlerini doğrudan belirterek kesin bir tarih ve saat oluşturmanıza olanak tanır. ay parametresinin 0-indeksli olduğunu unutmamak önemlidir. Örneğin, Ekim ayı için 9 değeri kullanılır. gün, saat, dakika, saniye ve milisaniye parametreleri isteğe bağlıdır ve belirtilmezse varsayılan olarak 1 (gün için) veya 0 (diğerleri için) değerini alırlar.


Date nesnesinin birçok yöntemi vardır. Bunlar genellikle iki kategoriye ayrılır: yerel zaman dilimine göre (getFullYear(), getMonth()) ve UTC'ye göre (getUTCFullYear(), getUTCMonth()) çalışan yöntemler. Benzer şekilde, tarih bileşenlerini ayarlamak için setFullYear() veya setUTCFullYear() gibi yöntemler mevcuttur.


Pratik Kullanım Örnekleri


Mevcut tarih ve saati alıp görüntüleme:

const simdi = new Date();
console.log(simdi); // Örnek çıktı: Thu Oct 26 2023 10:30:00 GMT+0300 (Türkiye Standart Saati)
console.log(simdi.toLocaleDateString()); // Örnek çıktı: 26.10.2023
console.log(simdi.toLocaleTimeString()); // Örnek çıktı: 10:30:00
console.log(simdi.toISOString()); // Örnek çıktı: 2023-10-26T07:30:00.000Z (UTC formatında)

Belirli bir tarih ve saat oluşturma:

// Yıl, ay (0-indeksli), gün, saat, dakika, saniye, milisaniye
const dogumGunu = new Date(1990, 4, 15, 12, 0, 0, 0); // 15 Mayıs 1990, 12:00:00
console.log(dogumGunu.toDateString()); // Örnek çıktı: Tue May 15 1990

// Tarih dizisi kullanarak
const yaziIleTarih = new Date("2024-01-20T14:30:00Z"); // UTC olarak 20 Ocak 2024, 14:30:00
console.log(yaziIleTarih.toLocaleString()); // Tarayıcının yerel ayarına göre görüntülenir

Tarih bileşenlerini alma:

const bugun = new Date();
const yil = bugun.getFullYear(); // Yılı alır (örneğin, 2023)
const ay = bugun.getMonth();   // Ayı alır (0-11, Ocak 0'dır)
const gun = bugun.getDate();    // Ayın gününü alır (1-31)
const gunAdi = bugun.getDay();  // Haftanın gününü alır (0-6, Pazar 0'dır)
const saat = bugun.getHours();  // Saati alır (0-23)
const dakika = bugun.getMinutes(); // Dakikayı alır (0-59)
const saniye = bugun.getSeconds(); // Saniyeyi alır (0-59)
const milisaniye = bugun.getMilliseconds(); // Milisaniyeyi alır (0-999)
const zamanDamgasi = bugun.getTime(); // 1 Ocak 1970'ten bu yana geçen milisaniye sayısı

console.log(`Yıl: ${yil}, Ay: ${ay + 1}, Gün: ${gun}, Saat: ${saat}:${dakika}`);

Tarih bileşenlerini ayarlama:

const gelecektekiTarih = new Date();
gelecektekiTarih.setFullYear(2025);
gelecektekiTarih.setMonth(0); // Ocak
gelecektekiTarih.setDate(1); // Ayın 1. günü
gelecektekiTarih.setHours(9);
gelecektekiTarih.setMinutes(0);
gelecektekiTarih.setSeconds(0);
gelecektekiTarih.setMilliseconds(0);

console.log(gelecektekiTarih.toLocaleString()); // Örnek çıktı: 1.01.2025 09:00:00

Tarihler arası fark hesaplama:

const tarih1 = new Date('2023-10-01');
const tarih2 = new Date('2023-10-31');

const farkMilisaniye = tarih2.getTime() - tarih1.getTime();
const farkGun = farkMilisaniye / (1000 * 60 * 60 * 24);

console.log(`İki tarih arasındaki gün farkı: ${farkGun}`); // Çıktı: 30

Önemli Notlar


  • Ay İndekslemesi: Date nesnesinin yapıcı fonksiyonunda ve getMonth(), setMonth() gibi yöntemlerinde ay değerleri 0'dan 11'e kadar indekslenir (0 = Ocak, 11 = Aralık). Bu yaygın bir hata kaynağıdır.

  • Saat Dilimi Farklılıkları: Date nesnesi, genellikle yerel saat dilimini kullanır. Ancak, getUTCFullYear(), setUTCHours() gibi UTC ön ekli yöntemler, Evrensel Eşgüdümlü Saat'e göre işlem yapar. Bu durum, özellikle uluslararası uygulamalarda veya sunucu-istemci iletişimi sırasında önemlidir. Tarihleri UTC formatında depolayıp, kullanıcının yerel saat dilimine göre görüntülemek iyi bir pratiktir.

  • String Ayrıştırma Güvenilirliği: new Date(tarihDizisi) yapıcı fonksiyonu, farklı tarayıcılarda ve JavaScript motorlarında farklı dizileri ayrıştırabilir. En güvenilir yöntem, ISO 8601 formatında tarih dizileri kullanmak (örneğin, "YYYY-MM-DDTHH:mm:ss.sssZ" veya "YYYY-MM-DD").

  • Date.now(): Bu statik yöntem, 1 Ocak 1970 UTC'den bu yana geçen milisaniye sayısını döndürür ve bir Date nesnesi oluşturmadan anlık zaman damgasını almak için hızlı bir yoldur. Performans açısından new Date().getTime()'dan daha etkilidir.

  • Geçersiz Tarihler: Geçersiz bir tarih oluşturmaya çalışırsanız (örneğin, 31 Şubat), Date nesnesi "Invalid Date" (Geçersiz Tarih) döndürür. Bu durumu isNaN(date.getTime()) ile kontrol edebilirsiniz.

Yayınlanma Tarihi: 2025-10-15 15:00:44
YouTube Kanalı Açarak Gelir Elde Etme Rehberi: Hayallerinizi Gerçeğe Dönüştürün!
Önceki Haber

YouTube Kanalı Açarak Gelir Elde Etme Rehberi: Hayallerinizi Gerçeğe Dönüştürün!

Kazanç Makaleleri
Sonraki Haber

SQL Dilinde `INSERT INTO` Komutunun Detaylı Kullanımı

SQL Makaleleri
SQL Dilinde `INSERT INTO` Komutunun Detaylı Kullanımı

Yorum yap

Yorum yapabilmek için  giriş  yapmalısınız.

Yorumlar

Bu yazı hakkında henüz yorum yapılmamıştır.
× JavaScript Dilinde JS Math Kullanımı
Bu ilginizi çekebilir

JavaScript Dilinde JS Math Kullanımı

JavaScript, web uygulamalarının dinamik etkileşimini sağlayan güçlü bir dil olmakla...