Ваша строка кода выглядит излишне сложной. Давайте разберемся с этим. Сначала назначьте «моменты», в которых вы хотите найти разницу. Вам пока не нужно format()
. Формат возвращает строку в целях презентации. Вам это не нужно (пока).
const evening = moment("18:00:00", "HH:mm:ss").utc();
const midnight = moment("00:00:00", "HH:mm:ss").utc();
Отличайтесь одним моментом от другого: один результат даст вам положительный результат, другой - отрицательный. ( это объясняется в документах ):
const diffFromEvening = evening.diff(midnight, 'hours');
const diffFromMidnight = midnight.diff(evening, 'hours');
console.log('diff from evening', diffFromEvening); // 18
console.log('diff from midnight', diffFromMidnight); // -18
Проверьте это в действии здесь .