悟心

          成功不是將來才有的,而是從決定去做的那一刻起,持續累積而成。 上人生的旅途罷。前途很遠,也很暗。然而不要怕。不怕的人的面前才有路。

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            93 隨筆 :: 1 文章 :: 103 評論 :: 0 Trackbacks
          <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
          posted on 2010-07-16 19:01 艾波 閱讀(13281) 評論(1)  編輯  收藏 所屬分類: Javascript

          評論

          # re: Js中parseFloat()方法所產的精度不一致問題 2015-10-26 16:04 test1
          chrome下運行結果如下,個人認為精度的偏移與parseFloat無關,是加法運算的問題

          > 0.11 + 0.2801 + 1.002
          > 1.3921000000000001  回復  更多評論
            

          主站蜘蛛池模板: 黄浦区| 通州市| 浦北县| 长宁区| 清水河县| 祁门县| 晋城| 西华县| 宁强县| 富裕县| 阿克| 垦利县| 林周县| 辽宁省| 汝南县| 揭东县| 雅江县| 乐至县| 安康市| 林芝县| 西充县| 黄梅县| 淅川县| 呼玛县| 镶黄旗| 仁寿县| 昂仁县| 彭阳县| 宣威市| 无锡市| 古浪县| 新干县| 高邑县| 盐源县| 锦州市| 常德市| 察隅县| 新晃| 石狮市| 青川县| 小金县|