Как распарсить строку формата 00:00:00.00 в массив на 4 значения?

Собственно вся суть в самом вопросе. Есть строка времени часы:минуты:секунды.сотые_доли_секунды Нужно распарсить данное значение и подсчитать общее количество миллисекунд.
Сделал вот так:
var tags = '01:10:01.10';
var re = /\s*:\s*/;
var re2 = /\s*.\s*/;
var tagList = tags.split(re);
var tagList2 = tagList['2'].split(re2);
var ms = (parseInt(tagList['0']*3600000))+(parseInt(tagList['1']*60000))+(parseInt(tagList2['0']*1000))+(parseInt(tagList2['1']*10));


И получаю нечто совсем неверное...
  • Вопрос задан
  • 301 просмотр
Решения вопроса 2
BuriK666
@BuriK666
Компьютерный псих
tags.split(/[:.]/);
Ответ написан
In4in
@In4in
°•× JavaScript Developer ^_^ ו°
var tags = '01:10:01.10'.split(":");
alert(+tags[0]*36e4 + +tags[1]*6e3 + parseInt(tags[2])*100 + +tags[2].split(".")[1]);
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@vilgeforce
Раздолбай и программист
Повторить 4 раза: читаем два байта, заносим куда надо. Читаем еще 1 байт, проверяем что он - ":", смещаем позицию чтения на 3. Добавить несколько проверок на невалидные строки и PROFIT!
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы