nodejs时刻格式无法显示

时间:2015-07-16 20:00:12

标签: node.js momentjs

下面我尝试将格式17_Jul_2016转换为日期。我可以看到它几乎正常工作,但在最后一行显示对象而不是日期(我可以看到正确的日期作为输出的最后一行'_d')

console.log(moment("17_Jul_2016","YYYY-MM-DD"));

给出输出

{
    [Number: -61611048000000]
    _isAMomentObject: true,
    _i: '17_Jul_2016',
    _f: 'YYYY-MM-DD',
    _isUTC: false,
    _pf: {
        empty: false,
        unusedTokens: [],
        unusedInput: ['_Jul_'],
        overflow: 1,
        charsLeftOver: 5,
        nullInput: false,
        invalidMonth: null,
        invalidFormat: false,
        userInvalidated: false,
        iso: false
    },
    _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: Wed Aug 16 17 00: 00: 00 GMT - 0400(Eastern Daylight Time)
}

2 个答案:

答案 0 :(得分:2)

将具有两个数字(17)的日期格式化为DD,将月份缩写(Jul)格式化为MMM,最后将四位数年份(2016)格式化为YYYY。解析器忽略非字母数字字符,但为了清楚起见,使用“_”。

console.log(moment("17_Jul_2016","DD_MMM_YYYY").toString());

答案 1 :(得分:1)

您还可以尝试使用格式化来格式化数据,例如-

    console.log(moment("17_Jul_2016","DD_MMM_YYYY").format('DD/MM/YYYY HH:mm'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>

这将为您提供输出-17/12/2019 12:45