Momentjs ile dünün randevusuna nasıl ulaşılır?


118

Öyleyse, sorum basit, MomentJs ile dünkü randevumu nasıl bulabilirim? Javascript'te çok basittir, yani

today = new Date();
yesterday = new Date(today.setDate(today.getDate() - 1))

console.log(yesterday)

Peki bunu MomentJs ile nasıl başarabilirim?


3
moment (). add ('günler', -1);
roeb

6
Ayrıca var new Date(Date.now() - 8.64e7). ;-)
RobG

Yanıtlar:


190

Sadece bu gibi: moment().subtract(1, 'days'). Size bir önceki gün yerel bilgisayarınızdaki ile aynı tam güncel saati verecektir.


2
Bunu göründüğü gibi denedim ama benim için işe yaramadı. Sonuca bir tür format sağlamam gerekiyordu. Örneğin, 'an (). Çıkart (1,' günler '). Takvim ()' veya 'an (). Çıkart (1,' günler '). ToDate ()' veya 'an (). Çıkart (1,' günler ') .format ("AA / GG / YYYY")'
Andrew

94

Ayrıca :

moment().subtract(1, 'day')

Size bir önceki gün yerel bilgisayarınızdaki ile aynı tam güncel saati verecektir.


Bu yöntemi bir pasajda bir aydan beri kullanıyorum ve bunun ayın başında düzgün çalışmadığını öğrendim. Yani moment(date).subtract(-1, 'day')ilk gün, önceki ayın son günü yerine geçerli ayın son gününü geri verir. Daha fazlasını bilen var mı?
3ky

moment().subtract(1, 'day')bunun yerine deneyebilir misinmoment().subtract(-1, 'day')
Sai Ram

@sam eksi unut, sadece bir yazım hatasıydı. moment(date).add(-1, 'day')Aynı sonucu denediğim bir sebep var mı ?
3ky

36

Dünün randevusunu aldığımızda, üç olasılık var

1. Mevcut zamanlamayla dünün tarihini alın

moment().subtract(1, 'days').toString()

2. Günün başlangıcı ile dünün tarihini alın

moment().subtract(1, 'days').startOf('day').toString()      

3. Günün sonu ile dünün tarihini alın

moment().subtract(1, 'days').endOf('day').toString()


5

Kullanarak günleri kolayca andan çıkarabilirsiniz.

var yesterday = moment().subtract(1, 'days')

Ve önceki tarihi bulmak için

var previousDay = moment('2017/11/6', 'YYYY/MM/DD').subtract(1, 'days')


3

GG-AA-YYYY biçiminde Momentjs cinsinden dünün tarihi.

const yesterdaydate = moment().subtract(1, "days").format("DD-MM-YYYY");
console.log(yesterdaydate)

0

Bu benim için çalıştı:

var yesterday = new Date(dateInput.getTime());
yesterday.setDate(yesterday.getDate() - 1);
console.log(yesterday);

var tomorrow = new Date(dateInput.getTime());
tomorrow.setDate(tomorrow.getDate() + 1);
console.log(tomorrow);

dateB = moment(yesterday).format("YYYYMMDD");
dateA = moment(tomorrow).format("YYYYMMDD");
console.log(dateB);
console.log(dateA);
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.