首页 > 其他分享 >js保留小数位数(进位舍去)问题

js保留小数位数(进位舍去)问题

时间:2023-06-16 14:23:17浏览次数:38  
标签:console log 后面 js 舍去 toFixed 小数位 进位

toFixed(x)

  这个方法在使用时,它内部对于进位舍去并没有使用四舍五入方法,而是使用的是银行家舍去法,即:

  • 舍去位的数值小于5时,直接舍去
  • 舍去位的数值大于等于6时,进位舍去
  • 当舍去位的数值等于5时,分为两种情况:5后面还有其他数字(非0),则进位后舍去;若5后面是0,则根据5前一位数的奇偶性来判断是否需要进位,奇数进位,偶数舍去。

  结果为:

let a = 0.45265;
console.log(a.toFixed(1))//5=5,由于后面存在数字2!=0,进位
console.log(a.toFixed(2))//2<5,舍去
console.log(a.toFixed(3))//6>5,进位
console.log(a.toFixed(4))//5=5,且5后面不存在数字>0
console.log(a.toFixed(5))
//结果
0.5
0.45
0.453
0.4526
0.45265

 

标签:console,log,后面,js,舍去,toFixed,小数位,进位
From: https://www.cnblogs.com/lisir-blogshare/p/17485408.html

相关文章

  • Node.js 开发常用到的库和插件工具,同事看到后也悄悄收藏了……
    Node.js是一个功能强大,并且非常流行的JavaScript运行时环境,使开发人员能够高效率的构建高性能应用程序。下面介绍了8个常见的应用程序开发中用到的库和函数,可以用于缓存数据、操作日期、处理图像、发送电子邮件、发出HTTP请求、记录请求和响应、压缩数据和哈希密码等。通过使......
  • Qt+QtWebApp开发笔记(六):http服务器html实现静态相对路径调用第三方js文件
    前言  前面做了一些交互,网页是直接通过html对response进行返回的,这里QtWebApp与传统的web服务器不同,传统的web服务器可以调用同级目录相对路径或者绝对路径下的js,而QtWebApp的httpserver是response返回当前页面的问题,默认是无法调用的。  为了解决调用一些依赖的如echarts......
  • js保留小数的方法(如保留一位小数)
     js保留小数的方法如下:(以保留两位为例)1、toFixed()方法需注意,保留两位小数,将数值类型的数据改变成了字符串类型//1.四舍五入varnum=1.7321;num=num.toFixed(2);console.log(num);//1.73console.log(typeofnum);//string2、Math.floor(),不四舍五入......
  • 解决ValueError: Please install nodejs >=12.0.0 before continuing
     1、升级你的condacondaupdateconda 2、https://anaconda.org/conda-forge/nodejs  Toinstallthispackagerunoneofthefollowing运行  condainstall-c"conda-forge/label/cf202003"nodejs 先运行这个不行的话,再选其他的运行。 例如:condainstall-......
  • js正则格式化日期时间自动补0的两种解法 将2022-3-4这种日期格式转化为2022-03-04
    js正则格式化日期时间自动补0的两种解法将2022-3-4这种日期格式转化为2022-03-04https://www.jb51.net/article/225324.htm+目录背景解法一思路:代码:解法二思路:总结参考背景时间日期格式化的需求很常见,也有很多工具类转换方法,比如需要将2022-3-4这种日期格式转化为2022-......
  • js 将对象转成url参数,url参数转成对象
    /***获取url的参数,并转成对象*/functiongetUrlParamJson(){varurl=window.location.href;if(url.indexOf("?")==-1){return{};}varobj={};url=url.substring(url.indexOf("?")+1);vararr=url.sp......
  • 防止Javascript重新排序JSON
    javascript中的对象为什么会按照键来自动排序?原因:javascript中的对象按照键来自动排序是浏览器造成的,经查V8的相关文档得出以下结论:Chrome浏览器下创建的js对象数组会自动按照键排序、FireFox99.0版本(最新版本)会,FireFox 4.0.1不会。 解决方法:必须将对象的键值转换为字符,......
  • js~在浏览器中对用户名和密码进行存储
    base64函数btoa()和atob()是JavaScript中的标准函数,通常在现代浏览器中都能正常工作。然而,它们在处理非ASCII字符时可能存在一些兼容性问题。这些函数的主要限制在于它们仅支持ASCII字符集,对于非ASCII字符(如Unicode字符)可能会产生不可预测的结果。在处理非ASCII......
  • json 处理
    需要引入"encoding/json"包json解析到mapjsonStr:="{\"a\":\"test\",\"b\":\"testb\"}"vardatmap[string]stringerr:=json.Unmarshal([]byte(jsonStr),&dat)iferr==nil{fmt.Println(da......
  • Java的JSON处理
    Java的JSON处理用于JSON处理的JavaAPI(JSON-P)提供可移植的API,以使用对象模型和流式API来解析,生成,转换和查询JSON。JSON-P中使用JSON的两种方式有两种:流式API和对象模型API。JSON-P流式API流式API将解析和生成控制移交给程序员。流式API提供了基于事......