我将这个数字作为整数439980
我想在右边2个地方放一个小数位。使其成为4399.80
字符数可以随时更改,所以我总是需要它从右边开始是2位小数。
我该怎么做?
感谢
答案 0 :(得分:29)
function insertDecimal(num) {
return (num / 100).toFixed(2);
}
答案 1 :(得分:4)
只需添加toFixed()将返回一个字符串值,因此如果您需要一个整数,则需要多一个过滤器。实际上,您可以使用Number()从nnnnnn函数中包装返回值以获取整数:
function insertDecimal(num) {
return Number((num / 100).toFixed(2));
}
insertDecimal(99552) //995.52
insertDecimal("501") //5.01
这里唯一的问题是JS将删除尾随' 0,因此439980将返回4399.8,而不是4399.80,因为您可能希望:
insertDecimal(500); //5
如果您只是打印结果,那么nnnnnn的原始版本可以完美运行!
JavaScript的Number函数可能会导致某些输入出现一些非常意外的返回值。您可以放弃对Number的调用,并使用unary operators
将字符串值强制转换为整数return +(num / 100).toFixed(2);
或乘以1,例如
return (num / 100).toFixed(2) * 1;
TIL:JavaScript的核心数学系统是kind of weird