当前位置: 首页 > wzjs >正文

电子商务网站建设 试卷河南网站域名备案

电子商务网站建设 试卷,河南网站域名备案,信誉好的东莞网站设计,wordpress注册充值卡当JS处理大整数或者浮点数的时候会出现精度丢失的情况。 Javascript的数字都使用双精度浮点数表示,遵循IEEE754标准 比如我遇到的问题,对一个小数的四舍五入,保留2位小数: 235.985≈235.98 235.9851≈235.99 原理请大家参考百度&…

当JS处理大整数或者浮点数的时候会出现精度丢失的情况。
Javascript的数字都使用双精度浮点数表示,遵循IEEE754标准

比如我遇到的问题,对一个小数的四舍五入,保留2位小数:
235.985≈235.98
235.9851≈235.99
原理请大家参考百度,本文只提供解决方案:
在JavaScript中处理精度丢失问题,可以采用以下方法:

1. 大整数处理

  • 使用字符串传输:与后端约定,将大整数(如ID)作为字符串返回,避免JSON解析时转为不准确的Number。
  • JSON解析处理:使用JSON.parse的reviver函数检测并转换大数为字符串:
    JSON.parse(jsonString, (key, value) => {if (typeof value === 'number' && (value > Number.MAX_SAFE_INTEGER || value < Number.MIN_SAFE_INTEGER)) {return value.toString(); // 转换为字符串}return value;
    });
    
  • 使用BigInt类型:对需要运算的大整数,使用ES6的BigInt
    const bigNum = BigInt("12345678901234567890"); // 使用字符串初始化
    console.log(bigNum + 1n); // 运算需使用同类型
    

2. 浮点数精度问题

  • 转为整数计算
    const result = (0.1 * 10 + 0.2 * 10) / 10; // 0.3
    
  • 使用第三方库(如decimal.js):
    import Decimal from 'decimal.js';
    const sum = new Decimal(0.1).plus(0.2).toString(); // "0.3"
    

3. 第三方库推荐

  • 大数运算bignumber.jsmath.js
  • 精确小数decimal.jsbig.js

4. JSON序列化BigInt

  • 自定义序列化方法:
    const data = { id: 12345678901234567890n };
    const json = JSON.stringify(data, (key, value) => typeof value === 'bigint' ? value.toString() : value
    );
    

5. 前后端协作

  • 明确数据格式:确保可能超出安全范围的字段(如ID、长整型)以字符串形式传输。

总结

  • 大整数:优先字符串传输,使用BigInt或库处理。
  • 浮点数:转为整数计算或使用专用库。
  • 兼容性:检查BigInt支持情况,必要时引入Polyfill。

通过以上策略,可有效避免JavaScript中的精度丢失问题。

http://www.dtcms.com/wzjs/803822.html

相关文章:

  • 网站建设优化服务咨询浙江网络安全学院
  • 好玩的游戏平台网站如何优化
  • 网站二级目录怎么做wordpress rewrite插件
  • 电商网站经营性备案wordpress 编辑器全屏
  • 旅行社网站 模板推广公司网站有哪些方式
  • 如何建设百度网站中国企业排名前十
  • 艺梵科技 网站建设中小企业网站建设报告
  • 曲靖手机网站建设费用陕西交通建设有限公司网站
  • 定制网站建设案例课堂网络推广与seo的区别在哪里
  • 用html5做手机网站广州网站建设公司怎么选
  • 关于seo的行业岗位有哪些商品标题seo是什么意思
  • 常州微元宝网站建设公司邮箱后缀正确的是以下
  • 480元做网站网站制作评价
  • 电子商务网站建设考题与答案wordpress数据库表
  • 企业网站的推广方法网站做程序员
  • 网站优化排名北京工商登记服务平台
  • 网站内的地图导航怎么做南京做网站外包
  • yellow片高清影视在线观看wordpress seo插件教程
  • 宝安附近公司做网站建设哪家效益快微信做明天展现网站要多少钱
  • 营销型网站建设细节五个网络营销方式
  • 微网站平台建设方案中国建设银行个人客户
  • 深做网站公司折800网站源码
  • 自己做网站 最好的软件下载中国网站建设调查分析
  • 济南网站假设推广网站平台建设工作汇报
  • 购物网站主页设计图怎么样引流顾客到店方法
  • 乐清官方网站图片网站该如何做seo优化
  • 如何自己开发网站创建网站花钱吗
  • 网站备案掉了什么原因怎么用jsp做网站
  • 下载游戏的软件应用哈尔滨网络优化公司有哪些
  • 网站建设与网站主机的选择dnf怎么做盗号网站