Преобразование времени Не работает должным образом?

0

Я использую ионный таймер в моем проекте. Когда я выбираю таймер, он передает значение контроллеру. Например, когда я выбираю 09:00 вечера, консоль показывает 79200. Если я выберу 7:00 вечера, консоль отобразит 68400. Я хочу преобразовать значение в 12-часовой формат. Я сделал несколько шагов, но это не работает для меня.

Мой код:

var a = new Date($scope.timePickerObject12Hour.inputEpochTime*1000);
console.log(a);
var b = moment.utc(a).format("HH:mm");
console.log(b)
$scope.timePickerObject12Hour.inputEpochTime = val;
console.log(val);
//var yourDateObject = new Date();

var selectedTime = new Date();
var amPmHour = $filter('date')(selectedTime, 'hh');
console.log(amPmHour);
$scope.time = $filter('date')(new Date(val*1000), 'hh:mma');
console.log($scope.time);
console.log('Selected epoch is : ', val, 'and the time is ', selectedTime.getUTCHours(), ':', selectedTime.getUTCMinutes(), 'in UTC');

Я пробовал код выше, но ничего не работает. Ниже я добавил свой код:

$scope.timePickerObject12Hour.inputEpochTime = val;
    console.log(val);
    console.log('Selected epoch is : ', val, 'and the time is ', selectedTime.getUTCHours(), ':', selectedTime.getUTCMinutes(), 'in UTC');
  1. на первом console.log я получаю 68400,
  2. для второго журнала консоли я получаю 68400 и время 19:00 в UTC. Как конвертировать 12-часовой формат в течение выбранного времени?
  • 0
    h % 12 || 12 и h<12?'am':'pm' , где h 24 h
Теги:
ionic

2 ответа

0
Лучший ответ

Я предполагаю, что вы хотите получить результат как строку. Ниже приведена простая реализация с помощью функции moment.js:

var secs = 68400;
console.log(moment().startOf('day').add(secs, 'seconds').format("h:mm a"));

Выйдет "7:00 вечера"

См. В plunker http://plnkr.co/edit/D0ai2PpEhnuJkTYblW29?p=preview

  • 0
    спасибо это работает
0

Вы можете получить формат 12Hrs с помощью оператора modulo:

var hours = new Date(68400000).getHours();    // 20 o'clock in milliseconds
hours = hours % 12;                           // Division by 12
hours = hours ? hours : 12;                   // the hour '0' should be '12'
console.log(hours)                            // 8

Ещё вопросы

Сообщество Overcoder
Наверх
Меню