İki javascript Date nesnesi arasında uygun çıkarma işlemini yapmanın ve gün deltasını alma yolunu arıyorum.javascript date çıkarma
Bu benim yaklaşımdır ancak bir giriş olarak bugünün tarih için başarısız:
<script type="text/javascript">
function getDayDelta(incomingYear,incomingMonth,incomingDay){
var incomingDate = new Date(incomingYear,incomingMonth,incomingDay);
var today = new Date();
var delta = incomingDate - today;
var resultDate = new Date(delta);
return resultDate.getDate();
}
//works for the future dates:
alert(getDayDelta(2009,9,10));
alert(getDayDelta(2009,8,19));
//fails for the today as input, as expected 0 delta,instead gives 31:
alert(getDayDelta(2009,8,18));
</script>
Bunun için daha iyi bir yaklaşım olurdu?
düzeltme için teşekkürler ama bu başarısız gibi görünüyor: getDayDelta (2009,8,19); // 1 döndürmeli ama 0 döndürür (bu benim yerel sürüme göre 18'dir) – Hellnar
Evet, çünkü bugün 'zaman' zamanı içerir, benim düzenlememe bakın ... – CMS
@Crib: Sorun, 'incomingDate'in bir zaman dilimine sahip olmasıdır 0 saat, 0 dakika, 0 saniye ve 0 milisaniye. Aynı şeyi 'bugün' yapmalısınız ya da bir gün öncesinde/arkasında kısmi günler alacaksınız. Değişikliği yansıtacak cevabı düzenledim. –