我正在尝试将屏幕宽度除以变量,以便在webview中绘制等间距的UI部分。
然而,当变量为3时,JavaScript中的结果为33/333333333333333,而第三部分无法按预期绘制,因为商的总和大于100%,我说。
这个问题有什么好的解决方法吗?
答案 0 :(得分:10)
您可以指定分部的精确度:
var width = (100 / 3).toPrecision(3);
答案 1 :(得分:5)
你能做的最好就是尽可能接近:
(100 / 3).toFixed(2)
答案 2 :(得分:1)
你可以做到
Math.floor(100/3);
总是将小数点四舍五入到较小的最接近的整数,所以在你的情况下它将它舍入到33。
答案 3 :(得分:0)
为三个切片中的两个切片尽可能接近宽度。从目标宽度(以像素为单位)减去其实际宽度(以像素为单位)的总和,以获得第三个切片的宽度。它可能比其他切片更宽或更窄一个或两个像素,但对于任何合理的屏幕分辨率都不会显示。
答案 4 :(得分:0)
100 *(1/3)将返回33.33333333333333。
注意:
1/3 * 100返回33.33333333333333
但
100 * 1/3返回33.333333333333336
所以使用括号是安全的。