在javascript中删除两个小数点后的数字而非圆数?

AMI*_*ian 9 javascript numbers rounding

我有这个 :

i=4.568;
document.write(i.toFixed(2));
Run Code Online (Sandbox Code Playgroud)

输出:

4.57
Run Code Online (Sandbox Code Playgroud)

但是我不想将最后一个数字舍入为7,我该怎么办?

Mat*_*att 9

使用简单的数学代替;

document.write(Math.floor(i * 100) / 100);
Run Code Online (Sandbox Code Playgroud)

(的jsfiddle)

您可以将它粘贴在自己的功能中以便重复使用;

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

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

document.write(myToFixed(i, 2));
Run Code Online (Sandbox Code Playgroud)

(的jsfiddle)


SLa*_*aks 9

只需切断较长的字符串:

i.toFixed(3).replace(/\.(\d\d)\d?$/, '.$1')
Run Code Online (Sandbox Code Playgroud)