Tarih & Zaman

Tarihe Gun/Ay/Yil Ekleme

Bu araç, verilen bir başlangıç tarihine gün, ay ve yıl ekleyerek ya da çıkararak yeni bir tarih üretir. Takvim planlaması yapan, proje takvimi oluşturan…

Veri dönemi: Ocak - Haziran 2026·Son doğrulama: 25 Mayıs 2026

Bu araç, verilen bir başlangıç tarihine gün, ay ve yıl ekleyerek ya da çıkararak yeni bir tarih üretir. Takvim planlaması yapan, proje takvimi oluşturan veya geçmiş olayları analiz eden herkes, tarihsel kaydırmaları hızlıca görmek ve tarihsel veri setlerini tutarlı hâle getirmek için bu hesaplayıcıyı güvenle kullanabilir.

Tarihe Gün/Ay/Yıl Ekleme veya Çıkarma

Bir başlangıç tarihine gün, ay ve yıl ekleyerek veya çıkararak yeni tarihi bulun.

Formül ve değişkenler

İlk adımda, kullanıcı tarafından girilen ‘Başlangıç Tarihi’ metni JavaScript Date nesnesine dönüştürülür ve geçerliliği kontrol edilir; geçersiz bir giriş NaN (Not a Number) değeri üretir ve fonksiyon null döner. Bu kontrol, tarih bilgisinin ISO formatında (YYYY-AA-GG) sağlanmasıyla doğru çalışır ve hatalı veri girişlerinin önüne geçer. Geçerli bir tarih nesnesi oluşturulduğunda, sonraki adımlara geçmek için bu nesne bir kopya üzerinde işlenir ve orijinal değer korunur.

Yıllar eklenirken, setFullYear metodu mevcut yıla kullanıcı tarafından belirtilen değer (pozitif ya da negatif) ekler; bu işlem ay ve gün bilgilerini korurken artık yılı doğru şekilde ayarlar. Ardından setMonth ile ay sayısı aynı mantıkla artırılır; JavaScript ay hesabı sıfır‑indexed olduğu için ekleme otomatik olarak fazla ayları bir sonraki yıla taşır. Son adımda setDate ile gün eklenir ve ayın son günü gibi durumlar kendi içinde düzeltilir.

İşlem tamamlandığında, yeni tarih nesnesi localeDateString ile Türkçe formatta hem tam tarih hem de haftanın günü olarak döndürülür; örneğin ’09 Eylül 2026 Çarşamba’ gibi. Ayrıca başlangıç ve yeni tarih arasındaki fark, milisaniye cinsinden elde edilen değer 86 400 000 (gün başına milisaniye) ile bölünerek gün sayısına çevrilir ve sonuç detaylarda gösterilir tamamen.

  • date: Başlangıç tarihini ‘YYYY-AA-GG’ biçiminde belirten giriş alanı.
  • days: Eklenmek ya da çıkarılmak istenen gün sayısı; pozitif değer ileri, negatif değer geri hareket ettirir.
  • months: Ay farkını ifade eder; 12’yi aşan değerler otomatik olarak yıla dönüşür.
  • years: Yıl farkını gösterir; pozitif ve negatif değerler aynı mantıkla işlenir.

Adım adım örnek

Aşağıdaki örnek, 9 Haziran 2026 tarihine üç ay eklenerek yeni tarih ve gün farkının nasıl elde edildiğini gösterir.

GirdiDeğer
Başlangıç Tarihi2026-06-09
Gün (+/−)0
Ay (+/−)3
Yıl (+/−)0
ÇıktıDeğer
Sonuç09 Eylül 2026 Çarşamba
Başlangıç09.06.2026
Yeni tarih09.09.2026
Gün farkı92
  • Kullanıcı 2026-06-09 tarihini ‘Başlangıç Tarihi’ alanına yazar ve diğer alanlarda 0 gün, 3 ay, 0 yıl girer.
  • Fonksiyon, girilen tarihe dayalı olarak bir Date nesnesi oluşturur ve geçerli bir tarih olup olmadığını doğrular.
  • İlk önce yıl farkı eklenir; burada 0 yıl olduğu için tarih aynı kalır, ardından setMonth ile 3 ay eklenir ve ay otomatik olarak Eylül ayına kayar.
  • Son adımda setDate ile 0 gün eklenir; bu işlem tarihi değiştirmez ve sonuçta 9 Eylül 2026 tarihine ulaşılır.
  • Fonksiyon, yeni tarihi ’09 Eylül 2026 Çarşamba’ olarak döndürür; ayrıca başlangıç ve yeni tarih arasındaki 92 günlük fark detayı da sunulur.

Dikkat edilmesi gerekenler

Ay ekleme işlemi, 12’yi aşan değerlerde otomatik olarak bir yıl artırır; bu sayede 15 ay eklenirse bir yıl ve üç ay olarak yeniden düzenlenir. Ancak ay bazlı eklemelerde gün değeri, ayın son gününe denk geldiğinde otomatik olarak bir sonraki aya kayabilir; örneğin 31 Ocak’a bir ay eklenirse 28/29 Şubat yerine 1 Mart elde edilir. Bu davranış, JavaScript tarih motorunun içsel kurallarına bağlıdır.

Negatif değer girişi, tarih geriye doğru kaydırma anlamına gelir; yıl, ay ve gün farkları aynı mantıkla çıkarılır ve tarih öncesi bir döneme de ulaşılabilir. Özellikle 29 Şubat gibi nadir günlerin bulunduğu yıllarda, negatif ay eklenmesi veya çıkarılması tarih hesaplamasını karmaşıklaştırabilir; JavaScript bu durumda ay sonunu otomatik olarak ayarlayarak geçerli bir tarih üretir. Kullanıcıların bu davranışı fark etmesi, beklenmedik bir gün değişikliğiyle karşılaşmalarını önler.

  • Ay ekleme sırasında 12’yi geçen aylar otomatik olarak yıla dönüşür.
  • Gün ekleme, ayın son gününde taşma yaparsa bir sonraki aya kayar.
  • Negatif yıl, ay ve gün değerleri aynı mantıkla çıkarılarak geçmişe yönlendirilir.
  • Geçerli bir tarih girilmediğinde fonksiyon null döner; bu hatayı önlemek gerekir.

Ne işe yarar?

Bu tarih ekleme aracı, proje takvimlerini güncellemek, kira sözleşmesi bitiş tarihlerini hesaplamak veya doğum günü gibi periyodik etkinliklerin bir sonraki gerçekleşme tarihini bulmak için ideal bir çözümdür. Girdi olarak sadece bir başlangıç tarihi ve değişim miktarları (gün, ay, yıl) gerektiği için kullanım süreci hızlı ve hatasız ilerler; sonuçlar doğrudan okunabilir Türkçe formatta sunulur, kullanıcıya bilgi.

Aracı kullanırken, giriş tarihinin gerçek bir takvim günü olduğundan emin olmak önemlidir; 2026-02-30 gibi geçersiz bir tarih hatalı sonuç verir. Ayrıca büyük negatif farklar, tarih geçmişine çok geriye gitmeyi sağlayabilir; bu durumlarda sonuçların mantıklı olup olmadığını kontrol etmek gerekir. Sonuçta elde edilen tarih, yerel ayarlar (tr‑TR) doğrultusunda haftanın günüyle birlikte gösterildiği için raporlamalarda doğrudan kullanılabilir.

Sık Sorulan Sorular

Ay ekleme sırasında ay 12'yi geçtiğinde tarih nasıl güncellenir?

JavaScript'in setMonth metodu, ay değerini 0‑11 aralığı dışında aldığında fazlalığı otomatik olarak yıla aktarır. Örneğin ay olarak 15 girildiğinde, mevcut ay 3 eklenir ve 12 ayın tamamı bir yıl olarak eklenir; kalan 3 ay ise yeni ay olarak ayarlanır. Böylece tarih doğru bir şekilde kaydırılır ve ay sınırları aşıldığında yıl da uygun biçimde artar.

Negatif bir yıl eklemek tarih geçmişine nasıl yansır?

Negatif yıl değeri, setFullYear metoduna mevcut yıldan çıkarılacak miktar olarak verilir. Fonksiyon, bu sayıyı mevcut yıla uygular ve tarih nesnesinin yılını geriye doğru kaydırır. Gün ve ay bilgileri korunur, ancak ay içinde bir geçiş (örneğin 29 Şubat gibi) varsa JavaScript otomatik olarak geçerli bir tarih oluşturur. Sonuç, başlangıç tarihinin geriye doğru kaydırılmış hâli olur.

Gün farkı hesabı hangi mantıkla yapılır?

İki tarih nesnesi arasındaki milisaniye farkı, yeni tarih nesnesinin zaman damgası (nd) ile başlangıç tarihinin zaman damgası (d) arasındaki fark olarak elde edilir. Bu fark milisaniye cinsindendir; bir günün milisaniye değeri 86 400 000 olduğu için fark bu sayıya bölünür ve tam gün sayısına dönüştürülür. Sonuç, gün olarak gösterilen farktır ve detaylar arasında yer alır.

İlgili hesap araçları