猿问

提交时获取 MM:SS:MS 格式的最短时间

我试图从带有圈数的秒表生成的 3 个结果中获取最低的时间值。


下面代码的结果可以显示以下格式的时间值: 00:00:56 00:02:34 00:02:15


因此,我替换/删除了冒号(:)以便使用最小值,最大值。


我正在尝试将最低值作为表格的一部分发送。


$(".submit").click(function(){

    var time_trial = [];


   $('.laps li').each(function (n) {

        time_trial[n] = $(this).html().replace(/:/g, '');

    });

    return false;

});

https://i.stack.imgur.com/ei28q.png


慕尼黑的夜晚无繁华
浏览 83回答 1
1回答

繁花如伊

因为您没有给我们提供信息,所以我假设将时间作为 format 的数组HH:MM:SS。您可以使用日期函数进行比较,我使用数学方法。使用Array#map转换数组的每个条目。为此,我在转换后的时间字符串(不带“:”)之前添加字符串'1'并用于parseInt获取有效的整数(因此为 1,因为否则前导零会产生问题)。在生成的整数数组上,我使用它Math.min来获取最小值并将其转换回字符串toString。最后,我使用subStr来构建时间字符串的有效格式。let times = ['00:00:56', '00:02:34', '00:02:15'];let res = Math.min(...times.map(t => parseInt('1'+t.replace(/:/g, '')))).toString();res = res.substr(1,2) + ':' + res.substr(3,2) + ':' + res.substr(5);console.log( res);
随时随地看视频慕课网APP
我要回答