提交时获得 MM:SS:MS 格式的最短时间
Get Lowest Time in MM:SS:MS Format on Submit
我正在尝试从带圈数的秒表生成的 3 个结果中获取最低时间值。
下面代码的结果可以以这些格式显示时间值:
00:00:56
00:02:34
00:02:15
因此,我 replaced/removed 冒号 (:) 以便与最小值、最大值一起使用。
我正在尝试将最低值作为表单的一部分发送。
$(".submit").click(function(){
var time_trial = [];
$('.laps li').each(function (n) {
time_trial[n] = $(this).html().replace(/:/g, '');
});
return false;
});
因为您没有给我们提供信息,所以我假设将时间作为数组格式 HH:MM:SS
。你可以用date-functionn来比较这个,我用的是数学方法。
使用 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);
我正在尝试从带圈数的秒表生成的 3 个结果中获取最低时间值。
下面代码的结果可以以这些格式显示时间值: 00:00:56 00:02:34 00:02:15
因此,我 replaced/removed 冒号 (:) 以便与最小值、最大值一起使用。
我正在尝试将最低值作为表单的一部分发送。
$(".submit").click(function(){
var time_trial = [];
$('.laps li').each(function (n) {
time_trial[n] = $(this).html().replace(/:/g, '');
});
return false;
});
因为您没有给我们提供信息,所以我假设将时间作为数组格式 HH:MM:SS
。你可以用date-functionn来比较这个,我用的是数学方法。
使用 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);