保持设定的小数位数,同时增加设定的数量
Keep set number of decimal places while increasing by set amount
我一直在制作一个计时器,它只以 1/30 的间隔计算小数(因此唯一的小数是 .x00、.x33、.x67)。
到目前为止它一直运行良好,但让我发疯的是如果小数是 1/10 的倍数,当我希望它是 .x00 时它会缩短为 .x(如果这有意义的话).
这会导致最后两位数字快速闪烁,我相信最后有00会让它更流畅。我用这个来显示输出:out.innerHTML = s+r.toFixed(3)*1;
(供参考)。
Fiddle
将 out.innerHTML = s+r.toFixed(3)*1
更改为 out.innerHTML = (s + r).toFixed(3)
。
乘以 1 会将您的值转换回数字,然后 javascript 将其转换回字符串并截断尾随零。将转换后的结果保留为字符串可防止截断。
out.innerHTML = (s+r).toFixed(3)
括号应该可以解决问题。
它以正确的顺序保持操作员的优先级。 Reference
我一直在制作一个计时器,它只以 1/30 的间隔计算小数(因此唯一的小数是 .x00、.x33、.x67)。
到目前为止它一直运行良好,但让我发疯的是如果小数是 1/10 的倍数,当我希望它是 .x00 时它会缩短为 .x(如果这有意义的话).
这会导致最后两位数字快速闪烁,我相信最后有00会让它更流畅。我用这个来显示输出:out.innerHTML = s+r.toFixed(3)*1;
(供参考)。
Fiddle
将 out.innerHTML = s+r.toFixed(3)*1
更改为 out.innerHTML = (s + r).toFixed(3)
。
乘以 1 会将您的值转换回数字,然后 javascript 将其转换回字符串并截断尾随零。将转换后的结果保留为字符串可防止截断。
out.innerHTML = (s+r).toFixed(3)
括号应该可以解决问题。 它以正确的顺序保持操作员的优先级。 Reference