Javascript数字格式化
Javascript Number Formatting
这当然是一个愚蠢的问题,请原谅。我的客户希望用五位数字显示十进制数字。例如:100.34或37.459。我用val.toPrecision (5);
完成了这个;然而,当我的数字变得很小的时候,我就得不到我想要的了。例如,如果我的数字是0.000347,它显示0.00034700。现在,我明白为什么它会这样做,但我不知道的是如何让它显示0.0003。任何想法吗?
Math.round(0.000347 * 1e4) / 1e4
或与toFixed
:
Number.prototype.toNDigits = function (n) {
return (Math.abs(this) < 1) ?
this.toFixed(n - 1) :
this.toPrecision(n);
};
http://jsfiddle.net/HeQtH/6/我们的问题显然是小于1的数字。因此,捕获它们并分别处理
function SetPrecisionToFive(n){
return (n > 1) ? n.toPrecision (5) : (Math.round(n * 1e4) / 1e4).toString();
}
您可以使用toFixed方法来完成此操作。例如:(0.000347).toFixed(4)
Javascript的toFixed()函数会将小数截断为固定的十进制精度,例如:
var num = .0000350;
var result = num.toFixed(5); // result will equal .00003
相关文章:
- 使用纯javascript格式化数字
- 用javascript格式化数字,而不进行更改
- Java脚本插件,用于将数字转换为特定于区域性的货币格式,并将具有特定货币格式的非格式化数字转换为普通数字
- jQuery(或Javascript)基于给定的C#/VBA/Java格式字符串格式化数字的方法
- 格式化数字,如22,55,86,21,28
- Javascript-格式化数字,始终显示原始的小数位数
- 使用 javascript 格式化数字
- Chrome告诉“Invaild Group”使用正则表达式来格式化数字
- 在 javascript 中用指数格式化数字
- 使用 jquery 编号格式化程序格式化数字并重新格式化它们
- Javascript - 用正则表达式替换字符串以格式化数字
- 如何使用 jQuery 格式化数字
- 剑道在网格中格式化数字
- 在谷歌脚本中格式化数字
- Javascript 用逗号和点格式化数字
- 如何以特定方式格式化数字
- 在 JavaScript 中格式化数字
- 在Dojo中格式化数字
- 通过ExtJS或javascript格式化数字
- 用撇号作为千位分隔符格式化数字