Может ли кто-нибудь предложить способ преобразования вывода, данного в 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
Итак, здесь вам нужно только поймать случаи, когда у вас полдень и полночь.
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>