необходимо представить массив json для представления тактовых импульсов в приложении angularjs

0

Может ли кто-нибудь предложить способ преобразования вывода, данного в SO, для представления таймингов часов.

Например, выход должен быть

12.15 am --> 0.15, 1.30 am --> 1.30, 12.15 pm --> 12.15 pm, 1.15 pm --> 13.15

вместо этого:

12.15 am --> 12.15, 1.30 am --> 1.30, 12.15 pm --> 24.15 pm, 1.15 pm --> 13.15

1 ответ

0

Итак, здесь вам нужно только поймать случаи, когда у вас полдень и полночь.

var timeList =  [
      {
        "text": " 4:00 am",
        "value": "17"
      },
      {
        "text": " 12:15 am",
        "value": "18"
      },
      {
        "text": " 12:30 pm",
        "value": "19"
      },
      {
        "text": " 3:45 pm",
        "value": "64"
      },
      {
        "text": " 4:00 pm",
        "value": "65"
      },
      {
        "text": " 4:15 pm",
        "value": "66"
      }
    ];
timeList.forEach(function(obj) {
  var m = obj.text.match(/ ([0-9]+):([0-9]+) (.+)/);
  console.log(m[3]);
  if (m[3] == 'pm') {
    m[1] = +m[1]+12;
    
    if(m[1] == 24){
      m[1] = 12;
     }

  }else if (m[3] == 'am' && m[1] == 12){
    m[1] = 0;
  }
  obj.unique = m[1] + "." + m[2];
});
document.getElementById('output').innerHTML = JSON.stringify(timeList);
<div id="output"></div>

Ещё вопросы

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