js笔记(一)浮点数
程序员文章站
2022-03-30 17:10:56
...
浮点数的坑
- JavaScript中,数字都是以64位浮点数存储,包括整数,由于浮点数不是精确的数,某些运算只有整数才能完成,此时 JavaScript 会自动把64位浮点数,转成32位整数,然后再进行运算,所以运算可能会出现偏差
console.log(0.1+0.1===0.2); //true
console.log(0.1+0.2===0.3); //false
console.log(0.1+0.3===0.4); //true
console.log(0.1+0.4===0.5); //true
console.log(0.1+0.5===0.6); //true
console.log(0.1+0.6===0.7); //true
console.log(0.1+0.7===0.8); //false
console.log(0.1+0.8===0.9); //true
console.log(0.1+0.9===1.0); //true
console.log(1.0/0.1); // 10
console.log(0.9/0.1); // 9
console.log(0.8/0.1); // 8
console.log(0.7/0.1); // 6.999999999999999
console.log(0.6/0.1); // 5.999999999999999
console.log(0.5/0.1); // 5
console.log(0.4/0.1); // 4
console.log(0.3/0.1); // 2.9999999999999996
console.log(0.2/0.1); // 2
console.log(0.1/0.1); // 1
总结
- 其他算法就不做介绍,至于详细解释,有兴趣可以网上搜索,遇到这种问题最简单的方法就是乘以10的倍数变成整数,避开小数
console.log((0.3*10)/(0.1*10)); //3
上一篇: 浮点数运算
推荐阅读
-
HTML DOM(学习笔记一)_html/css_WEB-ITnose
-
编写js找到一个字符串中指定子字符串的所有位置
-
一个简单的动态加载js和css的jquery代码_jquery
-
韩顺平_PHP软件工程师玩转算法公开课(第一季)01_算法重要性_五子棋算法_汉诺塔_回溯算法_学习笔记_源代码图解_PPT文档整理
-
JavaScript高级程序设计(第3版)学习笔记12 js正则表达式_基础知识
-
在vue.js中实现图片本地预览 裁剪 压缩 上传等一系列功能
-
Js数组经常用到的一些方法
-
前端新人学习笔记-------html/css/js基础知识点(三) - 不穿裤子的衣服
-
用JavaScript写一个js解释器
-
Spring boot + mybatis + Vue.js + ElementUI 实现数据的增删改查实例代码(一)