相关疑难解决方法(0)

浮点数学是否破碎?

请考虑以下代码:

0.1 + 0.2 == 0.3  ->  false
Run Code Online (Sandbox Code Playgroud)
0.1 + 0.2         ->  0.30000000000000004
Run Code Online (Sandbox Code Playgroud)

为什么会出现这些不准确之处?

language-agnostic math floating-point floating-accuracy

2798
推荐指数
28
解决办法
28万
查看次数

舍入到最多2位小数(仅在必要时)

我想最多舍入2位小数,但只在必要时.

输入:

10
1.7777777
9.1
Run Code Online (Sandbox Code Playgroud)

输出:

10
1.78
9.1
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做__CODE__

javascript decimal decimal-point rounding

2492
推荐指数
53
解决办法
220万
查看次数

JS乘以100给出了奇怪的结果

我有:

var a =  0.0532;
var b =  a * 100;
Run Code Online (Sandbox Code Playgroud)

b应该返回5.32但是它返回5.319999999999999.我该如何解决?

JSFiddle:http: //jsfiddle.net/9f2K8/

javascript multiplying

10
推荐指数
2
解决办法
7425
查看次数

在javascript中进行浮点比较

怎么可能100> = 99.2是假的?

var ls = parseFloat(("100").replace(",", ".")).toFixed(1);
var val = parseFloat(("99,2").replace(",", ".")).toFixed(1);
alert(ls >= val); /*=> result is false  ...but it should be true */
Run Code Online (Sandbox Code Playgroud)

ui文化是nl-BE

jsfiddle:http://jsfiddle.net/Ed6VY/

javascript floating-point compare

4
推荐指数
1
解决办法
87
查看次数

javascript数字精度而不转换为字符串

我正在开发 REST API 并返回 JSON。其中一个字段称为submissionPercent,我需要它是一个数字,但精确到小数点后两位

  • 如果submissionPercent是20,我需要返回20.00。
  • 如果submissionPercent是20.238,我需要返回20.24。

但submissionPercent应该是一个数字而不是一个字符串。如果我使用toFixedor toPrecision,那么我得到的是一个字符串。

如果可能的话,我该如何实现这一目标?

javascript decimal rounding

1
推荐指数
1
解决办法
3453
查看次数

解析以2位小数浮点

我需要将一个从Web服务接收的值四舍五入为2个小数位。为此,我使用此方法toFixed和parseFloat,因为我需要浮点数中的最终值。但是,当我的值是“ 5.5000000”时,他会向我显示该值只有一个小数点“ 5.5” ...

我是这样做的:

var num = 5.5000000;
var n = num.toFixed(2);
var numFinal = parseFloat(n);
Run Code Online (Sandbox Code Playgroud)

javascript

1
推荐指数
1
解决办法
9084
查看次数

将0转换为0.00作为数字

我正在尝试将数字转换为以下格式

0 -> 0.00
1 -> 1.00
1.1 -> 1.10
4.0  -> 4.00
Run Code Online (Sandbox Code Playgroud)

但是问题是它仅以字符串形式返回

value = 0;
var s = Math.floor(value / 60) + "." + (value % 60 ? value % 60 : '00');
console.log(s+s); //just checking if its number
Run Code Online (Sandbox Code Playgroud)

但是它以字符串形式返回,我尝试了parseInt,但是它只返回0。我试过ParseFloat and fixedTo(2),它仅以字符串形式返回。

javascript

0
推荐指数
1
解决办法
6109
查看次数