Moment.js和时刻时区将当前时间分隔为秒,分钟和小时

时间:2018-12-13 09:03:46

标签: javascript jquery time momentjs moment-timezone

我在项目中引用了两个脚本:

<script src="http://momentjs.com/downloads/moment.js"></script>
<script src="http://momentjs.com/downloads/moment-timezone-with-data.js"></script>

现在是代码部分:

<script>
    $(document).ready(function () {

        var now = moment(); // current timestamp, using your machine's time zone

        var nowNY = now.tz('America/New_York'); // converted to NY time zone
        console.log("Current time in NYC: " + nowNY.format());
    });
</script>

在控制台中,将显示以下内容:

Current time in NYC: 2018-12-13T03:59:13-05:00

现在我只需要提取03(小时),59(分钟)和13(秒)的零件

但是我不确定该怎么做,有人可以帮我吗?

2 个答案:

答案 0 :(得分:2)

只需使用format('HH:mm:ss')

  

这是最可靠的显示选项。它需要一串标记并将其替换为其相应的值。

您可以将HH使用00-24小时,mm使用0-59分钟,ss使用秒。

这里有一个现场样本:

var now = moment(); // current timestamp, using your machine's time zone
var nowNY = now.tz('America/New_York'); // converted to NY time zone
console.log("Current time in NYC: " + nowNY.format('HH:mm:ss'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.23/moment-timezone-with-data-2012-2022.min.js"></script>

答案 1 :(得分:1)

@VincenzoC的答案中(以及他在comment中正确添加的答案),时刻库具有特定的Getter,包括小时,分钟,秒(如果要使用)。像这样(as dictated in the moment docs

var now = moment(); console.log(now.hours());

或者,如果您想使用format功能,可以像这样使用它

now.format('HH'); now.format('mm'); now.format('ss');