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

河北建设广州分公司网站本科自考和成考的区别

河北建设广州分公司网站,本科自考和成考的区别,石家庄展厅设计公司,wordpress栏目更改无法显示相信程序都会遇到这样的问题#xff0c;有时需要在js上做运算合计等浮点数加减乘除#xff0c;但会有些浮点数会有误差问题。下面用js来解决浮点数加减乘除运算误差丢失精度这个请 【收藏点赞】。 是程序都会在浮点数加减乘除上有误差问题#xff0c;这是计算机二进制生成的…相信程序都会遇到这样的问题有时需要在js上做运算合计等浮点数加减乘除但会有些浮点数会有误差问题。下面用js来解决浮点数加减乘除运算误差丢失精度这个请 【收藏点赞】。 是程序都会在浮点数加减乘除上有误差问题这是计算机二进制生成的问题。 于是封装一个类用于解决浮点数加减乘除误差问题大概的原理就是把小数放大为整数乘进行算术运算再缩小为小数除。 举例 var a 0.1; var b 0.2 cnosole.log(ab);// 0.1 0.2 0.30000000000000004 多了 0.00000000000004 // 0.2 0.4 0.6000000000000001 多了 0.0000000000001 // 19.9 * 100 1989.9999999999998 少了 0.0000000000002核心代码 let Number {/** 判断obj是否为一个整数*/isInteger: function(obj) {return Math.floor(obj) obj},/** 将一个浮点数转成整数返回整数和倍数。如 3.14 314倍数是 100* param floatNum {number} 小数* return {object}* {times:100, num: 314}*/toInteger: function(floatNum) {var ret {times: 1, num: 0}if (this.isInteger(floatNum)) {ret.num floatNumreturn ret}//负数处理var isFu false;if(floatNum0){floatNum -floatNum;isFu true}var strfi floatNum var dotPos strfi.indexOf(.)var len strfi.substr(dotPos1).lengthvar times Math.pow(10, len)var intNum parseInt(floatNum * times 0.5, 10)//负数处理if(isFu)intNum - intNum;ret.times timesret.num intNumreturn ret},/** 核心方法实现加减乘除运算确保不丢失精度* 思路把小数放大为整数乘进行算术运算再缩小为小数除** param a {number} 运算数1* param b {number} 运算数2* param digits {number} 精度保留的小数点数比如 2, 即保留为两位小数* param op {string} 运算类型有加减乘除add/subtract/multiply/divide**/operation: function(a, b, digits, op) {var o1 this.toInteger(a)var o2 this.toInteger(b)var n1 o1.numvar n2 o2.numvar t1 o1.timesvar t2 o2.timesvar max t1 t2 ? t1 : t2var result nullswitch (op) {case add:if (t1 t2) { // 两个小数位数相同result n1 n2} else if (t1 t2) { // o1 小数位 大于 o2result n1 n2 * (t1 / t2)} else { // o1 小数位 小于 o2result n1 * (t2 / t1) n2}return result / maxcase subtract:if (t1 t2) {result n1 - n2} else if (t1 t2) {result n1 - n2 * (t1 / t2)} else {result n1 * (t2 / t1) - n2}return result / maxcase multiply:result (n1 * n2) / (t1 * t2)return resultcase divide:result (n1 / n2) * (t2 / t1)return result}},// 加减乘除的四个接口add:function(a, b, digits) {return this.operation(a, b, digits, add)},subtract: function(a, b, digits) {return this.operation(a, b, digits, subtract)},multiply: function(a, b, digits) {return this.operation(a, b, digits, multiply)},divide: function(a, b, digits) {return this.operation(a, b, digits, divide)},}var a 0.1; var b 0.2; console.log(test:, ab);console.log(test22:, Number.add(a,b))效果
http://www.pierceye.com/news/315292/

相关文章:

  • idea的网站开发登录页面做网页的
  • 寻找大连网站建设wordpress换模板 seo
  • 二手房公司网站源码网站的维护步骤
  • 衡水企业网站建设公司wordpress 快速回复
  • 网站维护需要关闭网站么找哪些公司做网站
  • 阿里巴巴做轮播网站如何建设学校的微网站首页
  • 国内设计好的网站案例网店设计风格怎么写
  • 网站建设长沙创建网页需要多少钱
  • 南通电商网站建设网站背景怎么设置
  • 无锡网站托管aspnet通讯录网站开发
  • 卫计网站建设工作总结铜陵建设行业培训学校网站
  • 手机网站竞价网页界面设计遵循的原则
  • 徐州seo推广公司广州营销型网站优化
  • 小说网站首页模板安徽华力建设集团网站
  • 减肥网站如何做公司企业模板
  • 郑州网站建设搜q.479185700怎么在百度上推广自己的公司信息
  • 深圳住建设局官方网站大连在哪个省市
  • 吉林企业建站系统费用wordpress幻灯片加载很慢
  • com域名和网站小型企业网站排名前十
  • 网站内容 优化泉州网站开发公司
  • 假发外贸网站模板做图库网站需要多少钱
  • 网站建设公司 知道万维科技wordpress支持移动
  • 经典网站建设邢台网站建设策划
  • 系统数据库与建设网站网站提交入口大全
  • 网站做数据分析的意义西安网站建设kxccc
  • 免费建个人网站alexa排名搜索
  • 做的网站第二年续费多钱店铺装修模板
  • 这么自己建设网站中卫网站设计厂家
  • 公司网站制作哪家公司好广州建设执业资格注册中心网站
  • 北京所有做招聘类网站建站公司Apache Wordpress伪静态处理