Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将字符串转换为数字并确保JavaScript中的浮点类型?_Javascript_Floating Point - Fatal编程技术网

如何将字符串转换为数字并确保JavaScript中的浮点类型?

如何将字符串转换为数字并确保JavaScript中的浮点类型?,javascript,floating-point,Javascript,Floating Point,我使用了parseFloat(number),但它输出一个int。例如: var num='3.0'; console.log(parseFloat(num)) // 3, not 3.0 如何将字符串转换为数字,并确保浮点类型带有小数部分?3.0是3,这没有错 如果你这样做 var num='3.1'; console.log(parseFloat(num))//3.1 它将显示3.1,因此没有任何问题 var num='3.0'; log(Number.parseFloat(num.to

我使用了
parseFloat(number)
,但它输出一个int。例如:

var num='3.0';
console.log(parseFloat(num)) // 3, not 3.0

如何将字符串转换为数字,并确保浮点类型带有小数部分?

3.0是3,这没有错

如果你这样做

var num='3.1';
console.log(parseFloat(num))//3.1
它将显示3.1,因此没有任何问题
var num='3.0';
log(Number.parseFloat(num.toFixed(1))将值四舍五入

var num='3.0'

console.log(Math.round(num))
3.0
因为数字是
3
-故事结束-使用
toFixed(1)
将数字链接到字符串-但它是字符串而不是数字,所以请看,但我不想将十进制数字固定为1。可以使用其他方法吗?实际上,在我的代码中,数字是从输入获取的。例如,用户希望输入3.0。当用户输入3.0时,数字已变为3。“当用户输入3.0时,数字已变为3”-是,这是数字3的正确数字表示形式。首先,您需要学习区分数字的内部表示形式和人类的格式化输出<代码>3.0是后者。现在,如果你说你想要这个“动态”,大概意味着你想要保留用户输入的尽可能多的小数,即使它们都是零-那么你需要确定小数的数量,然后再将其转换成一个数字,使用原始输入,但仍为字符串形式。但我不想将十进制数字固定为1。是否可以使用其他方法?