我只想把字符型原封不动的转换成数字型,值不要变化,
但是从结果上看,值变化了,我的这个需求改如何实现呢,
在线等
alert(Number('9999999.9999999')
结果 9999999.9999999
alert(Number('99999999.99999999')
结果 99999999.99999998
alert(Number('99999999.999999999')
结果 100000000
但是从结果上看,值变化了,我的这个需求改如何实现呢,
在线等
alert(Number('9999999.9999999')
结果 9999999.9999999
alert(Number('99999999.99999999')
结果 99999999.99999998
alert(Number('99999999.999999999')
结果 100000000
把整数和小数分成两个独立的部分,这样就可以按整数去加工处理但是当整数部分达到 16个9的时候
Number('9999999999999999')结果成了10000000000000000测试用
<script>
alert(Number('999999999999999'))
alert(Number('9999999999999999'))
</script>这差额就大了,晕死了
(1)或者自己写个大浮点数的JS类
这里有大整数计算类可用http://www.ohdave.com/rsa/
大浮点数的JS类没有发现过。
(2)或者将请求发给服务器处理,服务器语言一般都可以找到现成的资源,比如Java就有BigInteger,BigDecimal之类。