gpt4 book ai didi

javascript - 将像素转换为分钟

转载 作者:搜寻专家 更新时间:2023-11-01 05:25:49 25 4
gpt4 key购买 nike

我有一个应用程序可以将像素转换为分钟和小时。基本上使用分钟作为度量单位:

120 分钟 = 240 像素

我通过这个函数运行它:

convertToTime: function (min) {
var hours = Math.floor( min / 60);
var minutes = Math.round(min % 60);
if (minutes < 10) {
minutes = "0" + minutes;
}
if (hours > 12) {
hours = hours % 12;
}
return hours + ":" + minutes;
}

它会正确返回所有内容,但分钟数达到 60 时除外。例如,它会返回:

12:5812:5912:60

这不是我想要的,因为那不是实时的。

我认为问题在于 2 像素与一分钟的比率。但我无法确定它。

非常感谢任何帮助,谢谢!

最佳答案

执行 Math.floor(min) % 60 而不是 Math.round(min % 60)

% 是取模运算符。 x % 60 将始终产生一个介于 0 和 59 之间的整数值(对于正整数 x),这就是您想要显示的分钟数。您的问题是 min 不是整数 - 正好是一半的时间,因为您是通过将整数除以 2 来获得它的。特别是,当您的像素数为 119 时,min 是 59.5,Math.round() 会将其四舍五入到 60。由于 % 通常不太可能对浮点输入执行您想要的操作,因此正确的解决方案是在计算其模数之前确保该值是一个整数,而不是在之后尝试对其进行舍入。

关于javascript - 将像素转换为分钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7559734/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com