Moment.js и часовой пояс момента получают текущее время, разделенное на секунды, минуты и часы
Я ссылался на два сценария в моем проекте:
<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 ответа
Просто использовать 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>
Добавляя к VincenzoC(и, как он правильно добавил в своем комментарии), библиотека моментов имеет определенные Getters для часов, минут, секунд, если вы хотите использовать. Как это ( как продиктовано в данный момент документы)
var now = moment();
console.log(now.hours());
Или если вы хотите остаться с format
функция, которую вы можете использовать как это
now.format('HH');
now.format('mm');
now.format('ss');