为了账号安全,请及时绑定邮箱和手机立即绑定

如何在JavaScript中将字符串转换为float?

如何在JavaScript中将字符串转换为float?

RISEBY 2019-12-25 14:13:35
我正在尝试从数据网格解析两个值。字段是数字,并且当它们有逗号(例如554,20)时,逗号后面没有数字。我试过parseInt和parseFloat。我怎样才能做到这一点?
查看完整描述

3 回答

?
万千封印

TA贡献1891条经验 获得超3个赞

如果它们是单独的值,请尝试以下操作:


var values = "554,20".split(",")

var v1 = parseFloat(values[0])

var v2 = parseFloat(values[1])

如果它们是单个值(例如法语,其中一半写为0.5)


var value = parseFloat("554,20".replace(",", "."));


查看完整回答
反对 回复 2019-12-25
?
慕后森

TA贡献1802条经验 获得超5个赞

用点替换逗号。


这只会返回554:


var value = parseFloat("554,20")

这将返回554.20:


var value = parseFloat("554.20")

因此,最后,您可以简单地使用:


var fValue = parseFloat(document.getElementById("textfield").value.replace(",","."))

不要忘记,它parseInt()仅应用于解析整数(无浮点数)。在您的情况下,它仅返回554。此外,在float上调用parseInt()不会舍入该数字:它将取其底值(最接近的下整数)。


扩展示例以从评论中回答Pedro Ferreira的问题:


如果文本字段包含成千上万个分隔符,则1.234.567,99可以事先用另一个分隔符消除它们replace:


var fValue = parseFloat(document.getElementById("textfield").value.replace(/\./g,"").replace(",","."))


查看完整回答
反对 回复 2019-12-25
  • 3 回答
  • 0 关注
  • 327 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信