【问题标题】:Moment.js: Is it possible to zero pad a time (LT)?Moment.js:是否可以一次零填充(LT)?
【发布时间】:2013-09-17 06:12:49
【问题描述】:

我们显示一列日期和时间,并使用 Moment.js 格式化显示的文本:

假设日期是 2013 年 9 月 9 日,时间是上午 08:00。

var formatted = moment(adate).format("L LT");

日期是完美的并且是零填充的,例如:09/22/2013

时间不是零填充的;我快到 8:00

有没有办法告诉 Moment.js 将时间补零,这样我的日期和时间列看起来不错?

我使用的是 2.1.0 版。

【问题讨论】:

    标签: javascript date-formatting momentjs time-format


    【解决方案1】:

    您需要更改 longDateFormat (docs):LT: "hh:mm A"(hh 是重要的位)

    moment.lang('en', {
        longDateFormat : {
            LT: "hh:mm A",
            L: "MM/DD/YYYY",
            l: "M/D/YYYY",
            LL: "MMMM Do YYYY",
            ll: "MMM D YYYY",
            LLL: "MMMM Do YYYY LT",
            lll: "MMM D YYYY LT",
            LLLL: "dddd, MMMM Do YYYY LT",
            llll: "ddd, MMM D YYYY LT"
        }
    });
    
    var d = moment("Dec 25, 1995 4:00 AM GMT")
    
    d.format("L LT")
    

    结果:

    "12/24/1995 08:00 PM" // I'm GMT -8 so it checks out for me :) 
    

    我还没有测试你是否可以单独设置 LT。似乎可能/可能。

    【讨论】:

    • 非常感谢您的帮助!由于日期格式在填充和未填充版本中可用,我认为时间也可以处理两者(即 lt 代表“h:mm A”和 LT 代表“hh:mm A”。我想知道我们如何要求这是添加了?有什么想法吗?我相信其他人也会喜欢它。再次感谢您的帮助!:)
    • 我认为配置系统 (moment.lang) 在这种情况下可以正常工作。无需将其添加到代码库中。
    猜你喜欢
    • 1970-01-01
    • 2011-03-08
    • 2021-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-24
    相关资源
    最近更新 更多