解决js计算0.1+0.2 !==0.3
2024-08-30 21:05:36
经常做用js数据运算的同学应该了解,在js中,0.1+0.2不会等于0.3,而是等于:
我一开始发现这个bug的时候也觉得很奇怪,那怎么去解决这个bug,让0.1+0.2 最后能得到0.3呢?
方法一
最简单的就是先把0.1和0.2换成别的数字(因为在js中只有这两个数相加有bug,例如:1.1+1.2不会有问题),所以先让0.1和0.2分别乘以10,求和之后再除以10 ,则不会有问题:
(0.1*+0.2*)/ ===0.3
方法二
可能很多小伙伴都忘记了js的Number对象有一个保留小数位数的方法:toFixed();传入一个需要保留的位数就OK:
parseFloat((0.1+0.2).toFixed()) ===0.3
因为toFixed方法返回的是一个字符串,所以别忘了把字符串转回浮点数。
最新文章
- Linux 网络编程详解六(多进程服务器僵尸进程解决方案)
- ajax 无刷新分页
- mysql增量备份 percona-xtrabackup
- MVC3 带查询的分页Helper
- ffmpeg音频播放代码示例-avcodec_decode_audio4
- How to install tcpping on Linux.md
- Pandas系列(三)-缺失值处理
- Java(6)for循环
- Confluence 6 升级中的一些常见问题
- java操作elasticsearch实现查询删除和查询所有
- Docker Compose 配置文件常用指令
- WIN10下,JAVA安装及环境变量配置(cmd可以运行java,却不能运行javac)
- iptables防DDOS攻击和CC攻击设置
- Shell: nohup守护进程化
- 分布式系统的Raft算法
- bzoj千题计划121:bzoj1033: [ZJOI2008]杀蚂蚁antbuster
- vue实现结算淘宝购物车效果
- C#Thread学习
- auto create statistic script
- 《深度学习框架PyTorch:入门与实践》的Loss函数构建代码运行问题