如何将字符串值转换为数字进行精确计算?Javascript

如何将字符串值转换为数字进行精确计算?Javascript,javascript,floating-point,numbers,decimal,Javascript,Floating Point,Numbers,Decimal,代码如下: var a ="10.9549999999999141"; console.log(a); console.log(typeof a); console.log(Number(a)); 现在,上述代码的结果如下所示: "10.9549999999999141" "string" 10.954999999999915 这里看到的值从10.9549999999141四舍五入到10.954999999915,因为查询结果是字符串,所以我想将完全相同的值转换为数字,避免四舍五入 有人能帮

代码如下:

var a ="10.9549999999999141";
console.log(a);
console.log(typeof a);
console.log(Number(a));
现在,上述代码的结果如下所示:

"10.9549999999999141"
"string"
10.954999999999915
这里看到的值从10.9549999999141四舍五入到10.954999999915,因为查询结果是字符串,所以我想将完全相同的值转换为数字,避免四舍五入


有人能帮忙吗

如果我答错了你的问题,很抱歉,我的答案是parseFloat();也许你可以试试

如果我答错了你的问题,很抱歉,我的答案是parseFloat();也许你可以试试

相关:。Javascript本身最多只能处理16位数字。如果您想更精确,那么您需要使用专门的库。应该对您有帮助。可能重复,请检查此处:您可能可以尝试转换为。但是,你需要自己跟踪使用的指数。不过,使用定点算法是有必要的<代码>十进制(“10.9549999999141”)将是精确的。相关:。Javascript本身最多只能处理16位数字。如果您想更精确,那么您需要使用专门的库。应该对您有帮助。可能重复,请检查此处:您可能可以尝试转换为。但是,你需要自己跟踪使用的指数。不过,使用定点算法是有必要的<代码>十进制(“10.9549999999141”)将精确。您尝试过吗
parseFloat
表现出与
Number
相同的行为,在这种情况下(与函数本身无关,但与float数据类型的不足有关)。请使用snipet确认您的回答您是否尝试过
parseFloat
表现出与
Number
相同的行为,在这种情况下(与函数本身无关,但与float数据类型的不足有关)。请使用snipet确认您的答案