【问题标题】:FullCalendar - how to add leading zero to getUTCMinutes functionFullCalendar - 如何将前导零添加到 getUTCMinutes 函数
【发布时间】:2017-07-12 08:46:50
【问题描述】:

当我想使用 getUTCMinutes(FullCalendar 库)时,有什么简单的方法可以添加前导零。 在默认模式下,该功能将显示 0-9 分钟,然后显示 10-59。如何显示 00-09 和 10-59。

例如我有:

$('#div').html(Time: '+ event.start._d.getUTCHours()+':'+event.start._d.getUTCMinutes());

假设 event.start._d 保持价值:2017-07-13T16:00:00.000Z,我只想将时间显示为 16:00。以上代码将显示:16:0

我知道我可以像下面的代码那样做,它会起作用(结果将是:“16:00”):

minutes = (event.start._d.getUTCMinutes() < 10) ? '0'+event.start._d.getUTCMinutes() : event.start._d.getUTCMinutes();

$('#div').html(Time: '+ event.start._d.getUTCHours()+':'+minutes);

但也许有更优雅的解决方案?

非常感谢您的建议

【问题讨论】:

    标签: javascript fullcalendar momentjs datetime-format


    【解决方案1】:

    由于 fullCalendar 需要 momentJS,因此您已经可以使用该库,并且使用本机 JS Date 对象要容易得多。

    查看下面的比较以获得更简单的版本,它将使用 momentJS 输出正确的值:

    var m = moment("2017-07-13T16:00:00.000Z");
    var event = {
      start: m
    };
    
    $('#native').append(event.start._d.getUTCHours() + ':' + event.start._d.getUTCMinutes());
    event.start.utc();
    $("#moment").append(event.start.format("HH:mm"));
    <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <div id="native">
      Using native date:
    </div>
    <br/><br/>
    <div id="moment">
      Using momentJS:
    </div>

    有关所涉及的 momentJS 函数的更多详细信息,请参阅 http://momentjs.com/docs/#/manipulating/utc/http://momentjs.com/docs/#/displaying/format/

    【讨论】:

    • 谢谢 - 它就像一个魅力..干得好..我正在寻找这样的东西。当我的声誉更高时,我会给你 ADyson 我的投票。
    • 谢谢。无论您的声誉等级如何,您仍然可以将其标记为已接受的答案,即使您无法投票。
    猜你喜欢
    • 2014-09-09
    • 2011-02-03
    • 2020-06-07
    • 1970-01-01
    • 1970-01-01
    • 2021-11-21
    • 1970-01-01
    • 1970-01-01
    • 2021-11-26
    相关资源
    最近更新 更多