js精確計算

來源:互聯網
上載者:User

標籤:io   ar   os   sp   on   div   cti   bs   ad   

//加Number.prototype.add = function(arg) {    var r1, r2, m;    try{r1 = this.toString().split(".")[1].length;}catch(e){r1 = 0;}    try{r2 = arg.toString().split(".")[1].length;}catch(e){r2 = 0;}    m = Math.pow(10, Math.max(r1, r2));    return (this * m + arg * m) / m;};// 減法Number.prototype.sub = function(arg) {    return this.add(-arg);};// 乘法Number.prototype.mul = function(arg) {    var m = 0, s1 = this.toString(), s2 = arg.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);};// 除法Number.prototype.div = function(arg) {    var t1 = 0, t2 = 0, r1, r2;    try {t1 = this.toString().split(".")[1].length;}catch(e){}    try {t2 = arg.toString().split(".")[1].length;}catch(e){}    with (Math) {        r1 = Number(this.toString().replace(".", ""));        r2 = Number(arg.toString().replace(".", ""));        return (r1 / r2) * pow(10, t2 - t1);    }};//testvar a = 0.4;var b = 0.3;alert(Number(a).sub(b));



js精確計算

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.