javascript - 从字符串转换时如何在 javascript 中添加值

标签 javascript double decimal

我有一个字符串,我尝试将其转换为具有 16 位小数的十进制数。然后我想将该数字添加到数字 0 上,这应该是:

30280.9529335

但我得到:030280.9529335

如何在 JavaScript 中正确执行此操作?

var totalnumber = 0; var str = "30280.9529335";
totalnumber = totalnumber + ConvertToDouble(str);

console.log(totalnumber); //030280.9529335

function ConvertToDouble(x) {
    return Number.parseFloat(x).toFixed(16);
}

最佳答案

你的问题是 toFixed 的位置,toFixed 返回 String 而不是数字

console.log(typeof (1).toFixed(2))

因此,您的 ConvertToDouble 函数返回 string0 + some numeric string 将充当连接而不是加法

var totalnumber = 0; var str = "30280.9529335";
totalnumber = totalnumber + ConvertToDouble(str);

console.log(totalnumber.toFixed(16)); //030280.9529335

function ConvertToDouble(x) {
    return Number.parseFloat(x)
}

关于javascript - 从字符串转换时如何在 javascript 中添加值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55325288/

相关文章:

javascript - SlickGrid:跳入/跳出网格

java - 我可以将 LatLng 对象用作 double 对象吗?

Jquery:按下输入类型=提交时防止重新加载页面

python - 如何测试一个数是否能被小于1的小数整除? (54.10 % .10)

C# - 更改小数位数

css - 为货币输入创建一个 css 类

javascript - JavaScript API 是否公开用于压缩文件的内部解压器?

php - 使用 Curl 或其他方式检索完全呈现的页面?

javascript - 在 map 上的两个投影点之间绘制线 - 不显示线 - D3.js

将字节数组转换为 double 时出现 java.nio.BufferUnderflowException