Javascript解析浮点差减法
我要减去两个浮点数,但得到999998.779999999为什么?实际结果为999998.78Javascript解析浮点差减法,javascript,parsefloat,Javascript,Parsefloat,我要减去两个浮点数,但得到999998.779999999为什么?实际结果为999998.78 您的问题与浮点精度有关。 您可以找到一个解释。您的问题与浮点精度有关。 您可以找到一个解释。您想要的结果只是Javascript所产生内容的一个完整版本。您可以自己对结果进行四舍五入,以获得所需的格式: 货币1=2000001.44美元; 货币2=1000002.66$ Money1=NumberMoney1.替换/[^0-9\.]+/g,; Money2=NumberMoney2.replace/
您的问题与浮点精度有关。
您可以找到一个解释。您的问题与浮点精度有关。
您可以找到一个解释。您想要的结果只是Javascript所产生内容的一个完整版本。您可以自己对结果进行四舍五入,以获得所需的格式: 货币1=2000001.44美元; 货币2=1000002.66$ Money1=NumberMoney1.替换/[^0-9\.]+/g,; Money2=NumberMoney2.replace/[^0-9\.]+/g,; 舍入=Math.roundparseFloatMoney1-parseFloatMoney2*100/100;
控制台。对数圆形 您想要的结果只是Javascript所产生内容的一个完整版本。您可以自己对结果进行四舍五入,以获得所需的格式: 货币1=2000001.44美元; 货币2=1000002.66$ Money1=NumberMoney1.替换/[^0-9\.]+/g,; Money2=NumberMoney2.replace/[^0-9\.]+/g,; 舍入=Math.roundparseFloatMoney1-parseFloatMoney2*100/100;
控制台。对数圆形 结果是由于浮点精度,Python文档对此有很好的解释 结果是由于浮点精度,Python文档对此有很好的解释 您可以使用,因为您仅使用两位数字: toFixed返回numObj的字符串表示形式,该表示形式不使用指数表示法,并且在小数点后正好有数字。如果需要,数字将四舍五入,如果需要,小数部分将用零填充,以使其具有指定的长度。如果numObj大于1e+21,则此方法只调用Number.prototype.toString并以指数表示法返回字符串 片段: 货币1=2000001.44美元; 货币2=1000002.66$ Money1=NumberMoney1.替换/[^0-9\.]+/g,; Money2=NumberMoney2.replace/[^0-9\.]+/g,; 结果=Money1-Money2.toFixed2; console.logresult 您可以使用,因为您仅使用两位数字: toFixed返回numObj的字符串表示形式,该表示形式不使用指数表示法,并且在小数点后正好有数字。如果需要,数字将四舍五入,如果需要,小数部分将用零填充,以使其具有指定的长度。如果numObj大于1e+21,则此方法只调用Number.prototype.toString并以指数表示法返回字符串 片段: 货币1=2000001.44美元; 货币2=1000002.66$ Money1=NumberMoney1.替换/[^0-9\.]+/g,; Money2=NumberMoney2.replace/[^0-9\.]+/g,; 结果=Money1-Money2.toFixed2;
console.logresult;这与jQuery无关,只是vanilla JS这与jQuery无关,只是vanilla JS
Money1="2,000,001.44 $";
Money2="1,000,002.66 $"
Money1= Number(Money1.replace(/[^0-9\.]+/g,""));
Money2= Number(Money2.replace(/[^0-9\.]+/g,""));
console.log(parseFloat(Money1)-parseFloat(Money2));