`
liyanhui
  • 浏览: 347651 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[转]Js中parseFloat()方法所产生的精度问题

阅读更多

Demo:

<script language="javascript">
var a = "0.11";
var b = "0.2801";
var c = "1.002";
var sum1 = parseFloat(a)+parseFloat(b)+parseFloat(c);
var sum2 = (parseFloat(a)+parseFloat(b)+parseFloat(c)).toFixed(4)
document.write("a+b+c="+sum1);
document.write("<br/>")
document.write("a+b+c="+sum2)
</script>

a,b,c相加本来为1.3921,但sum1得出的结果为:1.3921000000000001,显然不正确,通过toFixed(n)方法修正后(n是精确的小数点位数),得到正确结果。

如:parseFloat(1.392143).toFixed(3)=1.392;

分享到:
评论

相关推荐

    javascript的parseFloat()方法精度问题探讨

    在Javascript中parseFloat()方法会产生精度问题 代码如下: [removed] var a = “0.11”; var b = “0.2801”; var c = “1.002”; var sum1 = parseFloat(a) + parseFloat(b) + parseFloat(c); var sum2 = ...

    javascript避免数字计算精度误差的方法详解.docx

    在JavaScript中进行浮点数运算时,经常会出现精度误差的问题。例如,一个简单的加法运算 `0.1 + 0.2` 的结果并不是预期中的 `0.3`,而是 `0.30000000000000004`。这种现象不仅让人困惑,而且在实际应用中可能会导致...

    JS精度计算1、转成整数计算再转换成小数,2、toFixed,3、math.js,4、bignumber.js,5、big.js

    类似于`bignumber.js`,`big.js`也是一个轻量级的库,专注于解决JavaScript的浮点数精度问题。它提供了一个Big类,用于创建和操作大数。与`bignumber.js`相比,`big.js`的API更简单,适合对性能要求较高或不需要...

    javascript避免数字计算精度误差的方法详解

    标题所提到的知识点是关于在JavaScript编程语言中,如何处理和避免在进行数字计算时出现的精度误差问题。这个问题是数字在以浮点数形式存储时,因为计算机的存储架构是以二进制为基础的,导致一些十进制小数在二进制...

    js中小数运算(加、减、乘、除)的问题及一些数学函

    JS 中小数运算(加、减、乘、除)的问题是指在JavaScript中对小数进行加、减、乘、除运算时可能遇到的精度问题。这种问题的产生是由于计算机对浮点数的存储方式和精度的限制。浮点数在计算机中是以二进制形式存储的...

    详解JavaScript中精度失准问题及解决方法

    在JavaScript中,精度失准问题主要源于其内部对...综上所述,理解JavaScript中的精度问题以及如何应对,对于编写涉及高精度计算的代码至关重要。正确地处理这些细节可以帮助我们编写出更加健壮和可靠的JavaScript程序。

    Javascript的数据类型转换

    虽然它能方便地格式化数字,但需要注意,由于JavaScript的浮点数精度问题,`toFixed()` 的结果可能不完全精确。 在JavaScript编程中,理解这些转换方法及其工作原理至关重要,因为它们经常在处理用户输入、数据验证...

    JS中乘法的浮点错误解决方法

    在JavaScript中,浮点数运算时常会出现精度问题,这主要是由于计算机内部表示浮点数的方式导致的。在JS中,11乘以22.9的结果并非预期的251.9,而是251.89999999999998,这种现象称为浮点误差。这是因为JavaScript...

    JS 数据类型转换

    **BigInt**:从ES2020开始,JavaScript引入了BigInt类型来处理大整数,避免了Number类型在处理大整数时的精度问题。 **String**:字符串是由一串字符组成的,它们是不可变的。可以使用单引号或双引号创建字符串,...

    javascript中的float运算精度实例分析

    在JavaScript编程中,浮点数的运算精度是一个需要...理解并掌握JavaScript中浮点数的精度问题及应对方法,对于提高程序的可靠性和正确性至关重要。通过上述方法,开发者可以有效地处理和校正浮点运算中可能出现的误差。

    js计算小数的通用方法

    这种方法不仅可以用于解决小数运算中的精度问题,还可以广泛应用于财务系统、科学计算等领域中,特别是当对计算结果的精度有较高要求时。通过这种方式,开发者可以在JavaScript中更准确地处理涉及小数的数学运算,...

    JS中数学函数的使用

    本文将详细介绍JS中的数学函数及其使用方法,并针对常见的小数运算问题提出解决方案。 #### 二、JS中小数运算问题及解决方案 在JavaScript中,由于浮点数的存储方式和计算机制,直接进行小数运算时可能会遇到精度...

    javascript计算器

    在JavaScript中,小数运算时常会遇到精度损失的问题,这是由于JavaScript使用了IEEE 754浮点数标准来存储和处理数字。这个标准在处理某些特定的小数运算时可能会导致结果不精确,尤其是在涉及大数和小数相除、循环...

    JavaScript习题(语言结构)

    JavaScript是Web开发中不可或缺的一部分,主要用于网页和网络应用的交互。以下是对题目中涉及的知识点的详细解释: 1. 关键字运算符:在JavaScript中,由关键字表示的运算符包括`typeof`、`delete`、`void`、`in`、...

    Javascript获取界面数字做比较常见问题

    JavaScript的Number类型存在精度问题,对于超过15位的小数,可能会出现不精确。在比较时,可以考虑四舍五入或使用特定库(如`decimal.js`)处理高精度计算。 #### 3.3 正负零比较 JavaScript中存在正零和负零,它们...

    JavaScript浮点数及运算精度调整详解

    需要注意的是,虽然`toFixed()`方法可以解决精度问题,但返回的是字符串类型,如果后续运算中需要将这个结果转换为数字类型,使用`parseFloat()`函数可以实现转换。 总而言之,JavaScript中的浮点数精度问题是一个...

    Javascript 浮点运算精度问题分析与解决

    JavaScript中的浮点运算精度问题是由浮点数在计算机内部的二进制表示所导致的。通过理解和使用`toFixed()`方法和自定义的数值比较函数,可以在很大程度上解决这一问题,从而使得数值比较的结果可靠和准确。

Global site tag (gtag.js) - Google Analytics