2016-04-06 21 views
0

Bugünlere tarih ekliyorum ve milisaniye cinsinden zaman damgaları alıyorum.Javascript getMonth, gün ekledikten bir önceki ay geri dönüyor

for(i=1;i<=shippingDays;i++){ 

     var result = new Date(); 
     result.setTime(result.getTime() + i * 86400000); 
     console.log(result); 
     console.log(result.getMonth()+'-'+result.getDate()+'-'+result.getFullYear()); 
     newDate = new Date(result.getMonth()+'-'+result.getDate()+'-'+result.getFullYear()); 
    console.log(newDate); 
}; 

ilk konsol Thu Apr 07 2016 18:34:33 GMT+0500 (PKT) döndürür ama daha sonra result.getMonth() her zaman bir önceki ay değeri döndürür. Yani ikinci konsol her zaman 3-7-2016 döndürür ve üçüncü konsol her zaman Mon Mar 07 2016 00:00:00 GMT+0500 (PKT) döndürür.

Son hedefim, önümüzdeki günlerde 00:00:00'dan milisaniye elde etmektir. Bugün olduğu gibi 04-06-2016. Önümüzdeki birkaç günün milisaniye zaman damgasını almak istiyorum. Ve zaman damgası, o tarihten başlayarak hesaplanmalıdır, yani, 00:00:00

Herhangi bir beden, yanlış ne yapıyorum bilmeme izin verebilir mi?

cevap

2

Data.getMonth tarihinden itibaren sıfır tabanlı (yani Ocak 0, feb 1'dir, vb).

Yeni bir tarih yapmak için ay değerini kullanmak isterseniz, yalnızca bir tane ekleyin.

1

getMonth yüzden 0 = Ocak, 1 = Şubat 3 sıfır dayanır = Nisan vs. console.log çıktısı Sen getMonth() işlevine 1 eklemeniz gerekir