const DateOptionDailyIncomesBaslangic = "26.09.2023"
const DateOptionDailyIncomesBitis = "27.09.2023"
Bu şekilde tarih girdiğimde sorunsuz kullanıyordum. Elle tarih girmek yerine otomatik yapmak istemiştim.
Buradan aldığım yardımlarınız ile alttaki şekilde kod kullandığımda herşey güzel sorunsuz. Teşekkürler.
DaysToSubtractID ile eğer cumartesi, pazar veya pazartesi ise düşülecek gün sayısını belirleyerek DateOptionDailyIncomesBitis değerini belirledim.
Before ile de bir önceki iş gününü belirledim. Aynı ay içerisinde olduğumzuda sorun yok.
Ancak ay atladığımızda sorun yaşadım. Örneğin bugün
const DateOptionDailyIncomesBaslangic = "29.09.2023"
const DateOptionDailyIncomesBitis = "02.10.2023"
olması gerektiğinde DateOptionDailyIncomesBaslangic değeri -1 oldu. Ay atladığımız için bu kısma kaçırmışım.
Birşeyler yapamya çalıştım ama baya uzun kod yazmam gerekti ve çok karışık oldu.
Eminim ki bunun çok daha kısa ve sade bir yolu vardır.
Bugünün tarihinden üç gün düştüğümde eğer ay atlamış ise doğru değere nasıl ulaşabilirim ?
Bazı aylar 30 bazı aylar 31 bi de şubat meselesi var
Aklımda deli sorular.Yardımcı olacak üstadlarıma şimdiden teşekkür ederim.
//BAŞLANGIÇ - TARİH DEĞERİNİ BELİRLE
const TodayID = new Date(); //Bugünün tarihini belirle
let DaysToSubtractID = 0; //Düşülecek gün sayısını 0 olarak belirle
let Before = 1;
if (TodayID.getDay() === 6) { DaysToSubtractID = 1; Before = 1; } //Günlerden Cumartesi(6) ise 1 gün düş
if (TodayID.getDay() === 0) { DaysToSubtractID = 2; Before = 2;} //Günlerden Pazar(0) ise 2 gün düş
if (TodayID.getDay() === 1) { DaysToSubtractID = 0; Before = 3;} //Günlerden Pazartesi(1) ise 3 gün düş
function formatDate(date, DaysToSubtractID) //Tarihi "2023-09-23" formatından "23.09.2023" formatına çevirme formülü
{
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, "0");
const day = String(date.getDate() - DaysToSubtractID).padStart(2, "0");
return `${day}.${month}.${year}`;
}
//const DateOptionDailyIncomesBaslangic = formatDate(TodayID, DaysToSubtractID + Before); //Düşülecek gün sayısını düşerek tarihi "2023-09-23" formatından "23.09.2023" formatına çevir
//const DateOptionDailyIncomesBitis = formatDate(TodayID, DaysToSubtractID); //Düşülecek gün sayısını düşerek tarihi "2023-09-23" formatından "23.09.2023" formatına çevir
//BİTİŞ - TARİH DEĞERİNİ BELİRLE