猿问

一个未知的数字如何转换成字符串仍保留小数点后面的值?

一个未知的数字,也不知道带不带小数点,带多少位

要把它转换成字符串

小数点不能漏掉

小数点后面有可能是很多个0

例如:18,20.3,3.66,3.001,3.0000

常用的是:str = num + ''; 但是很遗憾 3.0000 + '' = 3

有什么办法可以解决这个问题么?


肥皂起泡泡
浏览 609回答 1
1回答

皈依舞

你会这么问说明你没搞明白数字在js里是怎么存的。实际上不仅js,大多语言都一样,不关心、不区分也不会存储一个小数字面上小数部分末尾有几个0,3.0和3.00按IEEE754规范在内存里是一模一样的。你非要对此进行区分,就只能改用字符串存储,或使用自己设计的数据结构。但是一般不会有你提到的这种需求,你可以把你的使用场景放上来,应该有别的解决方案。如果只是保留固定小数位数的话使用楼上说的toFixed就行了
随时随地看视频慕课网APP

相关分类

Html5
我要回答