Javascript 动态数.toFixed()函数
我正在使用javascript number.toFixed()函数 我的问题是我必须明确提到分数长度的数量,如下所示: 如果编号为1e11,则我必须将其指定为Javascript 动态数.toFixed()函数,javascript,Javascript,我正在使用javascript number.toFixed()函数 我的问题是我必须明确提到分数长度的数量,如下所示: 如果编号为1e11,则我必须将其指定为 number.toFixed(2) 或者,如果编号为1e1,则: number.toFixed(1) 或者如果是1e0,那么 number.toFixed(0) 我想根据分数是否存在来动态地做。和分数长度无关 我不想传递固定分数长度的参数。js应该动态地理解它的小数长度。JS中是否有类似规定?或者java脚本中有没有
number.toFixed(2)
或者,如果编号为1e1,则:
number.toFixed(1)
或者如果是1e0,那么
number.toFixed(0)
我想根据分数是否存在来动态地做。和分数长度无关
我不想传递固定分数长度的参数。js应该动态地理解它的小数长度。JS中是否有类似规定?或者java脚本中有没有类似的函数,我不需要显式地传递固定长度的参数?您已经说明了一个问题,但没有像“猜测程序员的意图”那样询问一个特定的问题“理解”?是的,它不是那样工作的。@Orion不同意你的观点:“指数部分是一个“e”或“e”,后跟一个整数“0.11不是整数,所以1e0.11不是有效的JavaScript。是的,OP犯了一个简单的错误-这些数字肯定是
1e0
,1e1
和1e11
@Orion-protip:这就是你回去编辑问题的时候(我为你做了!)。看到我上面链接的答案,我想也是你问题的答案。投票后请发表评论。我没有投反对票,但这如何解决他们的问题?据我所知,他需要动态计算toFixed中的参数。
var temp = number.split('.');
if (typeof temp[1] !== 'undefined') {
console.log(temp[1].length); // here you got it
} else {
// 0
}