將數字截斷到小數點後兩位而不進行四捨五入
在JavaScript 中處理數字時,通常需要用一定數量的數字來顯示它們小數位。 toFixed() 方法可用來將數字四捨五入到指定的小數位數,但是如果您需要截斷數字而不四捨五入怎麼辦?
考慮以下範例:
var num = parseFloat(15.7784514); document.write(num.toFixed(1) + "<br />"); document.write(num.toFixed(2) + "<br />"); document.write(num.toFixed(3) + "<br />"); document.write(num.toFixed(10));
此程式碼產生以下輸出:
15.8 15.78 15.778 15.7784514000
如您所見,toFixed() 方法對數字到指定的小數位數。要截斷數字,我們可以將其轉換為字串,並使用正規表示式將數字匹配到小數點後第二位:
function calc(theform) { var num = theform.original.value, rounded = theform.rounded var with2Decimals = num.toString().match(/^-?\d+(?:\.\d{0,2})?/)[0] rounded.value = with2Decimals }
這段程式碼將原始數字轉換為字串,然後使用正規表示式^-?d (?:.d{0,2})?符合小數點後第二位的數字。然後將產生的字串指派給表單中的捨入元素。
此方法會將數字截斷到小數點後兩位,而不進行四捨五入。例如,如果原始數字是 15.7784514,則截斷後的值為 15.77。
以上是如何在 JavaScript 中將數字截斷到小數點後兩位而不進行四捨五入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!