1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. javascript小數精度丟失的完美解決方法介紹

        時間:2020-11-11 19:05:26 JavaScript 我要投稿

        關于javascript小數精度丟失的完美解決方法介紹

          原因:js按照2進制來處理小數的'加減乘除,在arg1的基礎上 將arg2的精度進行擴展或逆擴展匹配,所以會出現如下情況.

          javascript(js)的小數點加減乘除問題,是一個js的bug如0.3*1 = 0.2999999999等,下面列出可以完美求出相應精度的四種js算法

          function accDiv(arg1,arg2){ var t1=0,t2=0,r1,r2; try{t1=arg1.toString().split(".")[1].length}catch(e){} try{t2=arg2.toString().split(".")[1].length}catch(e){} with(Math){ r1=Number(arg1.toString().replace(".","")) r2=Number(arg2.toString().replace(".","")) return accMul((r1/r2),pow(10,t2-t1)); } } /* 何問起 hovertree.com */ //乘法 function accMul(arg1,arg2) { var m=0,s1=arg1.toString(),s2=arg2.toString(); try{m+=s1.split(".")[1].length}catch(e){} try{m+=s2.split(".")[1].length}catch(e){} return Number(s1.replace(".",""))*Number(s2.replace(".",""))/Math.pow(10,m) } //加法 function accAdd(arg1,arg2){ var r1,r2,m; try{r1=arg1.toString().split(".")[1].length}catch(e){r1=0} try{r2=arg2.toString().split(".")[1].length}catch(e){r2=0} m=Math.pow(10,Math.max(r1,r2)) return (arg1*m+arg2*m)/m } //減法 function Subtr(arg1,arg2){ var r1,r2,m,n; try{r1=arg1.toString().split(".")[1].length}catch(e){r1=0} try{r2=arg2.toString().split(".")[1].length}catch(e){r2=0} m=Math.pow(10,Math.max(r1,r2)); n=(r1>=r2)?r1:r2; return ((arg1*m-arg2*m)/m).toFixed(n); }

          以上這篇javascript小數精度丟失的完美解決方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。

        【關于javascript小數精度丟失的完美解決方法介紹】相關文章:

        1.關于JavaScript中的包裝對象介紹

        2.關于JavaScript中的類Class詳細介紹

        3.JavaScript toFixed方法介紹

        4.數控機床精度故障的原因及解決方法

        5.javascript的面向對象技術介紹

        6.異地結婚證丟失解決方法

        7.關于深入理解JavaScript中的對象的介紹

        8.Javascript高級手勢使用介紹

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>