1.样例

var a = .3 - .2 //0.09999999999999998
var b = .2 - .1 //0.1
a == b //false

出现这样的原因在于

1.Javascript采用IEEE-754浮点数表示法(几乎所有现代编程语言所采用),这事一种二进制表示法,可以精确地表示1/2, 1/8,1/1024的值,而我们常用十进制的分数1//10,1/100

2.实现有无数个,但是Javascript通过浮点数的形式只能表示其中有限的个数(确切说是18437736874454810627个,2^64 = 18446744073709551616),即Javascript中使用实数的时候,常常只是真实值的一个近似表示。  

相关文章:

  • 2021-12-23
  • 2022-12-23
  • 2021-10-03
  • 2022-01-27
  • 2022-12-23
  • 2021-06-09
  • 2022-12-23
  • 2021-08-07
猜你喜欢
  • 2021-11-18
  • 2022-12-23
  • 2021-06-20
  • 2022-12-23
  • 2021-12-23
  • 2021-06-17
相关资源
相似解决方案