簡體   English   中英

在javascript中刪除兩個小數點后的數字而不是圓形數字?

[英]Delete digits after two decimal point not round number in javascript?

我有這個 :

i=4.568;
document.write(i.toFixed(2));

輸出:

4.57

但我不想將最后一個數字舍入為7,我該怎么辦?

使用簡單的數學代替;

document.write(Math.floor(i * 100) / 100);

(的jsfiddle)

您可以將它粘貼在自己的功能中以便重復使用;

function myToFixed(i, digits) {
    var pow = Math.pow(10, digits);

    return Math.floor(i * pow) / pow;
}

document.write(myToFixed(i, 2));

(的jsfiddle)

只需切斷較長的字符串:

i.toFixed(3).replace(/\.(\d\d)\d?$/, '.$1')

一個有點復雜的方法:

var i=4.568,
    iToString = ​i + '';
    i = parseFloat(iToString.match(/\d+\.\d{2}/));
console.log(i);

這有效地獲取變量i並將其轉換為字符串,然后使用正則表達式匹配小數點前的數字和小數點后面的數字,使用parseFloat()然后將其轉換回數字。

參考文獻:

暫無
暫無

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

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