Мне была предложена задача создать функцию, которая будет конвертировать строковое время в миллисекундах.Эффективное преобразование строкового времени в миллисекундах
Это формат строки я получил:
"часы: минуты: seconds.milliseconds"
Так это значение, например, нужно будет возвращать 3010220.
"0: 50: 10.220"
Функция должен быть коротким и одно выровненным. Мне очень хотелось бы знать, где я могу улучшить функцию ниже, поскольку она не прошла критерии. как это можно превратить в один лайнер?
function toMilliseconds(time){
return time.match(/[0-9]+/g).map(function(val,s,a){
return s != 3 ? +val * ((Math.pow(60,a.length - s -2) * 1000)) : +val;
}).reduce(function(a,b){
return a+b;
},0);
}
«Функция должна быть короткий и один выровненный ». - Зачем это нужно, чтобы выстроились? Похоже на ужасное требование – tymeJV
Откуда взялся вызов? Вы можете обратиться за помощью? – putvande
Как '0: 50' стать' 30'? Должно ли быть «0,5» (полчаса)? – Archer