2014-11-03 8 views
6

momentJS ile 2 tarih karşılaştırmak için bir yolu var mı?MomentJS Day fark sadece zamanlar hariç

Çeşitli biçimleri denedim, ancak çalışmasını sağlayamadım. Ne olursa olsun günün hangi saatinde 14 gün olmak sonuç almak için arıyorum

var ExpiryDate = new Date("11/13/2014 11:13:00"); 
var daysDiff = moment(ExpiryDate).diff(moment(Date.now()), 'days'); 

:

Ben DateTime ile iyi çalışıyor olması.

Teşekkür

+0

sonra iki tarih arasında timepart karşılaştırmak ve ekleyin zamana dayalı bir gün eklemek istiyorsanız zaman bileşenlerini kaldırmak için startOf işlevini kullanabilirsiniz, Gerekirse ... – harishr

cevap

16

Her iki tarihleri ​​

moment(ExpiryDate).startOf('day').diff(moment(Date.now()).startOf('day'), 'days'); 
+3

Not: Bu yöntem orijinal tarihi değiştirir. 'Gün' için, * varolan * nesnesi için dakikalar, saniyeler ve saatler anlamını 0'a ayarlar (bu nedenle çok hızlıdır). Bu durumda, yeni bir nesne yaratıyorsunuz ve değiştiriyorsunuz, böylece gerçek bir yan etki yok ama eğer ExpiryDate.startOf ('gün') 'i yeni bir 'moment' oluşturmadan yapıyorsanız o zaman orijinali değiştirecektir. Merak ediyorsanız uygulama şudur: https://github.com/moment/moment/blob/497f918515ae6ab900f008f19523b1e4ae5e2450/src/lib/moment/start-end-of.js –