簡體   English   中英

JavaScript中浮點數的划分

[英]Division of float numbers in JavaScript

我試圖將屏幕寬度除以變量,以便在webview中繪制等間距的UI部分。

但是,當變量為3時,JavaScript中的100/3結果為33.3333333333333336,而第三部分無法按預期繪制,因為商的總和大於100%,我說。

這個問題有什么好的解決方法嗎?

您可以指定除法的精度:

var width = (100 / 3).toPrecision(3);

你能做的最好的就是盡可能接近:

(100 / 3).toFixed(2)

你可以做

Math.floor(100/3);

它總是將小數點四舍五入到較小的最接近的整數,所以在你的情況下它將它舍入到33。

獲得三個切片中兩個切片的寬度盡可能接近。 從目標寬度(以像素為單位)減去其實際寬度(以像素為單位)的總和,以獲得第三個切片的寬度。 它可能比其他切片更寬或更窄一個或兩個像素,但對於任何合理的屏幕分辨率都不可見。

100 *(1/3)將返回33.33333333333333。

注意:

1/3 * 100返回33.33333333333333

100 * 1/3返回33.333333333333336

所以使用括號是安全的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM