JS处理数据四舍五入(tofixed与round的区别详解)
1 、tofixed方法
toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。例如将数据Num保留2位小数,则表示为:toFixed(Num);但是其四舍五入的规则与数学中的规则不同,使用的是银行家舍入规则,银行家舍入:所谓银行家舍入法,其实质是一种四舍六入五取偶(又称四舍六入五留双)法。具体规则如下:
简单来说就是:四舍六入五考虑,五后非零就进一,五后为零看奇偶,五前为偶应舍去,五前为奇要进一。
显然这种规则不符合我们平常在数据中处理的方式。为了解决这样的问题,可以自定义去使用Math.round方法进行自定义式 的实现指定保留多少位数据进行处理。
定义和用法
toFixed() 方法可把 Number 四舍五入为指定小数位数的数字。
语法
NumberObject.toFixed(num)
| 参数 | 描述 |
|---|---|
| num | 必需。规定小数的位数,是 0 ~ 20 之间的值,包括 0 和 20,有些实现可以支持更大的数值范围。如果省略了该参数,将用 0 代替。 |
返回值
返回 NumberObject 的字符串表示,不采用指数计数法,小数点后有固定的 num 位数字。如果必要,该数字会被舍入,也可以用 0
补足,以便它达到指定的长度。如果 num 大于 le+21,则该方法只调用
NumberObject.toString(),返回采用指数计数法表示的字符串。
抛出
当 num 太小或太大时抛出异常 RangeError。0 ~ 20 之间的值不会引发该异常。有些实现支持更大范围或更小范围内的值。
当调用该方法的对象不是 Number 时抛出 TypeError 异常。
实例
在本例中,我们将把数字舍入为仅有一位小数的数字:
Show the number 13.37 with one decimal:
|
1
2
3
4
|
<script type="text/javascript">var num = new Number(13.37);document.write (num.toFixed(1))</script> |
输出:
13.4
2 、round方法
round() 方法可把一个数字舍入为最接近的整数。例如:Math.round(x),则是将x取其最接近的整数。其取舍的方法使用的是四舍五入中的方法,符合数学中取舍的规则。对于小数的处理没有那么便捷,但是可以根据不同的要求,进行自定义的处理。
例如:对于X进行保留两位小数的处理,则可以使用Math.round(X * 100) / 100.进行处理。
定义和用法
round() 方法可把一个数字舍入为最接近的整数。
语法
Math.round(x)
参数 描述
x 必需。必须是数字。
返回值
与 x 最接近的整数。
说明
对于 0.5,该方法将进行上舍入。
例如,3.5 将舍入为 4,而 -3.5 将舍入为 -3。
实例
把不同的数舍入为最接近的整数:
|
1
2
3
4
5
6
7
|
<script type="text/javascript">document.write(Math.round(0.60) + "<br />")document.write(Math.round(0.50) + "<br />")document.write(Math.round(0.49) + "<br />")document.write(Math.round(-4.40) + "<br />")document.write(Math.round(-4.60))</script> |
输出:
1
1
0
-4
-5
JS处理数据四舍五入(tofixed与round的区别详解)的更多相关文章
- js 基础 for in 和 for of的区别详解
for in 和 for of 相对于大家肯定都不陌生,都是用来遍历属性的没错.那么先看下面的一个例子: 例1 const obj = { a: 1, b: 2, c: 3 } for (let i ...
- Node.js中的不安全跳转如何防御详解
Node.js中的不安全跳转如何防御详解 导语: 早年在浏览器大战期间,有远见的Chrome认为要运行现代Web应用,浏览器必须有一个性能非常强劲的Java引擎,于是Google自己开发了一个高性能的 ...
- php课程 1-3 web项目中php、html、js代码的执行顺序是怎样的(详解)
php课程 1-3 web项目中php.html.js代码的执行顺序是怎样的(详解) 一.总结 一句话总结:b/s结构 总是先执行服务器端的先.js是客户端脚本 ,是最后执行的.所以肯定是php先执行 ...
- SQL Server 表的管理_关于数据增删查改的操作的详解(案例代码)
SQL Server 表的管理_关于数据增删查改的操作的详解(案例代码)-DML 1.SQL INSERT INTO 语句(在表中插入) INSERT INTO 语句用于向表中插入新记录. SQL I ...
- JQ的offset().top与js的offsetTop区别详解
一.前言 最近在做一个图片懒加载的插件,就纵轴(Y轴)而言,我需要时时获取图片的上偏移量,好判断是否已进入视图区域,而我所理解的是offsetTop应该是跟offset().top一样的,然后陷入了因 ...
- JQ的offset().top与JS的getBoundingClientRect区别详解,JS获取元素距离视窗顶部可变距离
壹 ❀ 引 我在 JQ的offset().top与js的offsetTop区别详解 这篇博客中详细分析了JQ方法offset().top与JS属性offsetTop的区别,并得出了一条offset( ...
- 图解大数据 | 海量数据库查询-Hive与HBase详解
作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/84 本文地址:http://www.showmeai.tech/article-det ...
- 【django-vue】前端取消默认样式 main.js配置 后端主页模块接口 跨域问题详解 项目自定义配置 git介绍和安装
目录 回顾 上节课回顾 今日内容 1 前端全局样式和js配置 1.1 global.css 1.2 settings.js 1.3 main.js 2 后端主页模块接口 三种开发模式 模型父类Base ...
- node.js 包教不包会 (Windows版详解)
针对@alsotang 的新手入门教程 https://github.com/alsotang/node-lessons ,详解该教程在Windows中的实践,包括博主在实践过程中遇到的问题及解决方案 ...
- [js高手之路] html5 canvas系列教程 - 状态详解(save与restore)
本文内容与路径([js高手之路] html5 canvas系列教程 - 开始路径beginPath与关闭路径closePath详解)是canvas中比较重要的概念.掌握理解他们是做出复杂canvas动 ...
随机推荐
- Github无法访问解决办法
Github无法访问解决办法 问题描述:网速正常,但是github无法访问. 解决办法: 1.因为Github网址域名更换.查询网站https://ipchaxun.com/ ,例如输入github. ...
- [转]WorldWind开发中WorldWindowGLCanvas .setPreferredSize()函数找不到
值高温假期,无意翻到了csdn中三维GIS开发的专栏,讲的是worldwind Java三维GIS系统开发的东西,十分感兴趣.恰巧要求的环境已经存在,直接耍起来.将最新的Worldwind和JOGL下 ...
- 即时通讯安全篇(九):为什么要用HTTPS?深入浅出,探密短连接的安全性
本文由ELab技术团队分享,原题"探秘HTTPS",有修订和改动. 1.引言 对于IM开发者来说,IM里最常用的通信技术就是Socket长连接和HTTP短连接(通常一个主流im会是 ...
- [炼丹术]Yolov8训练使用总结
Yolov8训练使用总结 Yolov8训练使用总结 介绍 安装 Install pip install ultralytics Development git clone https://github ...
- Solution Set - “女孩是瑰宝我心动一丝不苟”
目录 0.「NOI Simu.」静态顶树 1.「NOI Simu.」祖先 2.「NOI Simu.」睡眠 3.「JLOI 2008」「洛谷 P3881」CODES 4.「ARC 163A」Divide ...
- 消息中间件之-Kafka相关知识
前言 本篇文章是我基于拉勾kafka课程所作的笔记,包括Kafka基本架构.核心概念.生产者解析.消费者解析.存储.事务.一致性保证等等,希望对大家有所帮助. 一.kafka架构 Kafka基础知识 ...
- canal源码分析简介-2
3.0 server模块 server模块的核心接口是CanalServer,其有2个实现类CanalServerWithNetty.CanalServerWithEmbeded.关于CanalSer ...
- 项目PMP之八项目质量管理
项目PMP之八--项目质量管理 一.定义:以执行组织的名义支持过程的持续改进活动 核心理念:兼顾项目管理和可交付成果两方面 质量影响程度(代价由大到小):客户发现缺陷 > 交付前检测和纠正缺 ...
- 【隐私计算笔谈】MPC系列专题(十):安全多方计算下的集合运算
学习&转载文章:[隐私计算笔谈]MPC系列专题(十):安全多方计算下的集合运算 集合运算 集合可以通俗地描述为确定的一堆东西.如有一个集合\(\),一个元素\(\)要么属于集合\(\),记做\ ...
- EMWIN图形库入门
一.EMWIN图形库移植 在STM32ZET6(64KB SRAM.512KB FLASH)上移植,参考正点原子STM32F1 EMWIN开发手册_V2.0 STemWin源码可以在ST官网下载 版本 ...