JavaScript面接問題:なぜ0.1+0.2!0.3


霊魂二問:
  • どうして0.1+0.2!=0.3
  • どうやってこの問題を解決しますか?
    1、なぜ0.1+0.2!=0.3これはJavaScriptの格納値がダブル精度の浮動小数点を採用しているためですが、JSが採用している浮動小数点の標準は私達の数字を裁断します.これによって精度が失われる問題があります.このとき:
    0.100000000000000000000002 === 0.1  // true
    
    conole.log(0.100000000000000002)  //   0.1          0.100000000000000002,
                  ,            ,               
    
    2、どうやってこの問題を解決しますか?
    parseFloat((0.1 + 0.2).toFixed(10)) === 0.3 //  true