- 9
- 0
- 约9.56千字
- 约 14页
- 2018-11-02 发布于广东
- 举报
关于JavaSript计算精度丢失的问题.doc
关于JavaScript中计算精度丢失的问题
由于计算机是用二进制来存储和处理数字,不能精确表示浮点数,而 JavaScript屮没有相应的封装类来处理浮点数运算,直接计算会导致运算精度 丢失。
为了避免产生精度差异,把需要计算的数字升级(乘以10的n次幂)成计 算机能够精确识别的整数,等计算完毕再降级(除以10的n次幂),这是大部分 编程语言处理精度差异的通用方法。
关键词:
计算精度四舍五入四则运算精度丢失
1.疑惑
我们知道,几乎每种编程语言都提供了适合货Tr汁算的类。例如C#提供了 decimal, Java 提供了 BigDecimal,JavaScript 提供了 Number
巾于之前用decimal和BigDecimal用得很好,没有产生过精度问题,所以一直没有怀疑 过JavaScript的Number类型,以为可以直接使用Number类型进行计算。但是直接使用是 有问题的。
我们先看看叫舍五入的如下代码:
alert (Number (0. 009). toFixed⑵); alert (Number (162. 295) ? toFixed ⑵);
-按正常结果,应该分别弹出0.01和162.30。但实际测试结果却是在不同浏览器中得到 的是不同的结果:
在ie6、7、8下得到0.00和162.30,第一个数截取不正确;
在firefox中得到0.01和16
您可能关注的文档
- 六年级班务工作总结 .doc
- 六年级班务工作计划范文 .doc
- 六年级班级德育工作计划 .doc
- 六年级的元旦主持词 .doc
- 六年级秋期家长会发言稿 .doc
- 六年级科学上册测试题.doc
- 六年级科学实验计划 .doc
- 六年级科学教学计划-小学六年级科学教学计划 .doc
- 六年级科学试卷分析 .doc
- 六年级第一单元测试题及答案.doc
- 煤矿测量工岗位专业考试试卷和答案.docx
- 2026届云南省曲靖市麒麟区五中高二化学第一学期期末达标测试试题含答案.docx
- 2025年执业药师药学专业知识试卷含答案:药物化学与药理学综合测试.docx
- 贵州省遵义市汇川区2025-2026学年八年级上学期学业水平(期末)考试数学(解析版).pdf
- 大一大学美育考试题及答案.docx
- 贵州省遵义新蒲新区2025-2026学年上学期八年级期末数学试题(解析版).pdf
- 工厂供电考试试卷及答案.docx
- 2025年焦作沁阳市公益性岗位人员招聘33人考试备考题库及答案解析.docx
- 贵州省遵义市第二十三中学2025-2026学年八年级上学期期末数学试卷(解析版).pdf
- 2025年一建《机电工程管理与实务》考试施工组织设计模拟试题含答案库含答案.docx
最近下载
- 建设工程造价咨询成果文件质量标准-CECA-GC-7-2026.docx VIP
- 2022年新鲁教版英语(五四制)九年级全册Unit1-10单词表.pdf VIP
- DB5305_T 176-2024 冬春茬嫁接番茄生产技术规程.docx VIP
- 2026年秋季高中物理开学第一课 新学期学习规划PPT课件.pptx VIP
- DB32_T 4445-2023 党政机关办公用房使用管理规范.docx VIP
- 孙宇晨:我的女友景甜.pdf VIP
- 医疗器械-GMP2014与2025版、42061、9001、13485对比分析.pdf VIP
- 地质调查员地质灾害方向职业技能培训大纲.docx
- HG∕T 4132-2021 工业磷酸氢二铵.pdf
- 国际贸易实务(英文版).ppt VIP
原创力文档

文档评论(0)