Я пытаюсь отформатировать часовую долю объекта даты, используя Intl.DateTimeFormat.Желаемый результат должен быть только числом (от 0 до 23).Код:
var myopts = {
hour: '2-digit',
hour12 : false
};
var f = new Intl.DateTimeFormat("de", myopts);
console.log (f.format(new Date()));
Вывод (в Chrome 72 и Firefox 65) похож на «14 Uhr» («Uhr» в переводе с немецкого означает «часы»).
Использование локали"ru" Я мог бы избавиться от добавленного "am" / "pm", установив hour12 : false
.
Js Fiddle