一个未知的数字,也不知道带不带小数点,带多少位要把它转换成字符串小数点不能漏掉小数点后面有可能是很多个0例如:18,20.3,3.66,3.001,3.0000常用的是:str = num + ''; 但是很遗憾 3.0000 + '' = 3。有什么办法可以解决这个问题么?
1 回答
皈依舞
TA贡献1851条经验 获得超3个赞
你会这么问说明你没搞明白数字在js里是怎么存的。实际上不仅js,大多语言都一样,不关心、不区分也不会存储一个小数字面上小数部分末尾有几个0,3.0和3.00按IEEE754规范在内存里是一模一样的。你非要对此进行区分,就只能改用字符串存储,或使用自己设计的数据结构。但是一般不会有你提到的这种需求,你可以把你的使用场景放上来,应该有别的解决方案。
如果只是保留固定小数位数的话使用楼上说的toFixed
就行了
- 1 回答
- 0 关注
- 608 浏览
添加回答
举报
0/150
提交
取消