哪个javascript函数像parsefloat一样将语言环境作为参数?
Posted
技术标签:
【中文标题】哪个javascript函数像parsefloat一样将语言环境作为参数?【英文标题】:Which javascript function like parsefloat that takes the locale as parameter? 【发布时间】:2014-10-17 09:51:15 【问题描述】:问题:
我得到了这个输入:
"23,234.34"
使用以下语言环境, locale = "我们-美国"
我想要这个结果:23234.34
in number var.
所以我使用 parseFloat 但这个函数不将语言环境作为参数, 当我使用字符串“23,234.34”时,函数返回不是数字(NAN)。
if ($('input#feesamount').val() != '')
$funding =
feeAmount: parseFloat($('input#feesamount').val()),
acquirerregistrationid: $('input#registerid').val(),
acquirer: $('select#acquirer').val()
;
你知道可以帮助我的函数吗?
【问题讨论】:
***.com/a/12694511 javascript parseFloat in Different Cultures的可能重复 【参考方案1】:如果您只处理美国格式,您可以使用string.replace(/,/g, '')
。否则,你想使用这个库:http://numeraljs.com/
【讨论】:
如何使用 numericjs 获取输入中的数字?【参考方案2】:您可以编写自己的代码,使用 switch
根据区域设置处理价格/费用并返回浮点数。
var price = '23,234.34';
var locale = 'us-US';
function parsePrice(price, locale)
switch (locale)
case 'us-US':
price = price.replace(',', '');
break;
return parseFloat(price);
parsePrice(price, locale); // 23234.34
DEMO
【讨论】:
【参考方案3】:尝试将 ',' 替换为 ''(空字符串)
if ($('input#feesamount').val() != '')
$funding =
feeAmount: parseFloat(($('input#feesamount').val()).replace(/,/g,'')),
acquirerregistrationid: $('input#registerid').val(),
acquirer: $('select#acquirer').val()
;
【讨论】:
以上是关于哪个javascript函数像parsefloat一样将语言环境作为参数?的主要内容,如果未能解决你的问题,请参考以下文章
Javascript数值转换(Number,parseInt,parseFloat)
JavaScript系统函数(parseInt()函数parseFloat()函数isNaN()函数eval()函数)