如何在JavaScript中将这种类型的值的小数位限制为4个?e是指数,因为我正在使用10的幂值。toFixed()
似乎无法使用。
1.0531436913408342e-7
-5.265718456704172e-7
8.425149530726674e7
如何在JavaScript中将这种类型的值的小数位限制为4个?e是指数,因为我正在使用10的幂值。toFixed()
似乎无法使用。
1.0531436913408342e-7
-5.265718456704172e-7
8.425149530726674e7
尝试:
Math.round(val*10000)/10000
Math.round(val*Math.pow(10,limit))/Math.pow(10,limit)
- JustMaiernumObj.toExponential(n)
MDN文档介绍了一种专门用于限制指数表示法中要显示的小数位数的JavaScript方法:decimal places to show in exponential notation:
*numObj*.toExponential([*fractionDigits*])
使用您的示例数字,您将得到以下结果:
1.0531436913408342e-7.toExponential(4) // 返回 1.0531e-7
-5.265718456704172e-7.toExponential(4) // 返回 -5.2657e-7
8.425149530726674e7.toExponential(4) // 返回 8.4251e+7
MDN的引用:
返回一个字符串,该字符串表示带有小数点前一位的Number对象的指数表示法,四舍五入到小数点后fractionDigits位
非常方便!
你可以使用 Math.round();
使用 Math.round(x)
会将数字四舍五入为最接近的整数(使用经典的0.5规则)。
你可以传入自己的条件并设置小数位数。下面的链接中有1、2和3位小数的示例。
0.00000010531436913408342
中获得什么?是0
还是"0.0000"
或者是"1.053e-7"
? - Alex K.