2016-01-15 6 views
0

Я хочу сравнить даты, чтобы получить даты, а затем использовать момент, чтобы получить его в определенном формате, прежде чем сравнивать его с датой в моей базе данных.MomentJS: Дата сравнения с моментом

Вот код, в котором я отформатирую дату в определенном формате, чтобы сравнить ее позже.

var date = req.body.validFrom; 
var formatDate = moment(date, "MM-DD-YYYY"); 
console.log(date); 

Но я получаю вывод как объект, указанный ниже, поэтому я не знаю, как мне сравнить мои даты? Может ли кто-нибудь сказать мне, почему я получаю этот результат и как его отформатировать? Я пробовал все комбинации, но это дает мне этот объект.

{ [Number: 1492626600000] 
    _isAMomentObject: true, 
    _i: Sat Jan 16 2016 00:00:00 GMT+0530 (India Standard Time), 
    _f: 'MM-DD-YYYY', 
    _isUTC: false, 
    _pf: 
    { empty: false, 
    unusedTokens: [], 
    unusedInput: [ 'Sat Jan ', ' ', ' 00:00:00 GMT+0530 (India Standard Time)' ], 
    overflow: 1, 
    charsLeftOver: 49, 
    nullInput: false, 
    invalidMonth: null, 
    invalidFormat: false, 
    userInvalidated: false, 
    iso: false }, 
    _locale: 
    Locale { 
    _ordinalParse: /\d{1,2}(th|st|nd|rd)/, 
    ordinal: [Function], 
    _abbr: 'en', 
    _ordinalParseLenient: /\d{1,2}(th|st|nd|rd)|\d{1,2}/ }, 
    _d: Thu Apr 20 2017 00:00:00 GMT+0530 (India Standard Time) } 
POST /admin/schedules/ - - ms - - 
2016-01-15T18:30:00.000Z 
{ [Number: 1492626600000] 
    _isAMomentObject: true, 
    _i: Sat Jan 16 2016 00:00:00 GMT+0530 (India Standard Time), 
    _f: 'MM-DD-YYYY', 
    _isUTC: false, 
    _pf: 
    { empty: false, 
    unusedTokens: [], 
    unusedInput: [ 'Sat Jan ', ' ', ' 00:00:00 GMT+0530 (India Standard Time)' ], 
    overflow: 1, 
    charsLeftOver: 49, 
    nullInput: false, 
    invalidMonth: null, 
    invalidFormat: false, 
    userInvalidated: false, 
    iso: false }, 
    _locale: 
    Locale { 
    _ordinalParse: /\d{1,2}(th|st|nd|rd)/, 
    ordinal: [Function], 
    _abbr: 'en', 
    _ordinalParseLenient: /\d{1,2}(th|st|nd|rd)|\d{1,2}/ }, 
    _d: Thu Apr 20 2017 00:00:00 GMT+0530 (India Standard Time) } 

ответ

2

Используйте этот синтаксис:

var formatDate = moment(date).format("MM-DD-YYYY"); 
console.log(formatDate); 

Вам нужно создать объект момента на основе даты, а затем форматировать i т.

Я не уверен, что вы хотите зарегистрировать date или formatDate.

+0

спасибо большое Это сработало. –

1

Чтобы использовать момент, чтобы вернуть значение строки нужно вызвать .format(format)documentation

Так что в вашем случае я считаю, что это должно быть

var date = req.body.validFrom; 
var formatDate = moment(date).format("MM-DD-YYYY"); 
console.log(formatDate); 
+0

Большое спасибо, iT works –

+0

Выбрали голоса, которые всегда ценились за ответы, которые работают. :) – zchrykng