Преобразование времени воспроизведения в форматированный строковый Javascript - PullRequest
0 голосов
/ 29 сентября 2018

У меня есть метка времени, извлеченная из видео, которое я хочу преобразовать в удобную для пользователя строку в javascript.

let now = Player.getCurrentTime();

let minutes = Math.floor(now / 60.0);
let seconds = ((now / 60.0) - minutes) * 60;

console.log(minutes+":"+(seconds < 10 ? "0":"")+seconds);

Оператор console.log, использующий условный оператор, отлично работает для быстрых результатов.Существуют ли какие-либо базовые функции Javascript, которые позволят мне создать строку, используя входные данные, как указано в console.log выше?


ОБНОВЛЕНИЕ:

Быстрый крик MrPickles для быстрого ответа.Я просто сделал это вручную с помощью вспомогательной функции.Если кому-то нужно быстрое форматирование метки времени, вот бесплатная халява:

function formatTime(timestamp) {

    let minutes = Math.floor(timestamp / 60.0);
    let seconds;
    let rawSeconds = ((now / 60.0) - minutes) * 60;

    if(rawSeconds < 10.0) {
        if(rawSeconds < 1.0) {
            seconds = rawSeconds.toPrecision(2);
        } else {
            seconds = rawSeconds.toPrecision(3);
        }
    } else {
        seconds = rawSeconds.toPrecision(4);
    }

    let mString = minutes.toString();
    let sString = seconds.toString();
    let displayTime = mString+":"+(seconds < 10 ? "0":"")+sString;
    return displayTime;
}

1 Ответ

0 голосов
/ 29 сентября 2018

Короче говоря, нет.

Существуют модули даты / времени, которые вы можете получить, чтобы помочь с этим, но большинство популярных являются большими.Если это все, что вы делаете с датой, тогда я бы сохранил то, что у вас есть.

Если вы обнаружите, что вы много делаете с датами и форматированием, тогда date-fns может быть вариантом.

...