如何将货币字符串转换为double与jQuery或JavaScript?

如何将货币字符串转换为double与jQuery或JavaScript?

 

javascript jquery
我有一个文本框,将有一个货币字符串在里面,我则需要该字符串转换为double对其执行操作。 “$ 1,100.00”-> 1100.00 这需要发生的所有客户端端。我别无选择,只能离开货币字符串作为货币字符串作为输入,但需要转换/将其转换为一个双允许的数学运算。
本文地址 :CodeGo.net/33162/ 
------------------------------------------------------------------------------------------------------------------------- 
1.  删除所有非点/数字:
var currency = "$1,100.00";
var number = Number(currency.replace(/[^0-9\.]+/g,""));

2.  使用正则表达式来删除格式(美元parseFloat将字符串转换为浮点数。`
var currency = "$1,100.00";
currency.replace(/[$,]+/g,"");
var result = parseFloat(currency) + .05;

3.  我知道这是一个老问题,但想给一个额外的选项。 jQuery的全局化时代赋予解析文化特定的格式为浮点数的能力。 给定一个字符串“$ 13,042.00”,并使之全局化设置为en-US:
Globalize.culture("en-US");
你可以分析的float值了,像这样:
var result = Globalize.parseFloat(Globalize.format("$13,042.00", "c"));
这会给你:
13042.00
并允许您与其他文化的工作。 
4.  你可以试试这个
<script type="text/javascript">
var str="$1,112.12";
str = str.replace(",","");
str = str.replace("$","");
document.write(parseFloat(str));
</script>

5.  我知道你已经找到了解决你的问题,我只是想,或许你可以看看下面的更广泛的jQuery插件用于国际数字格式: 国际数字格式化 
6.  accounting.js是要走的路。它在一个项目,有很好的吧。
accounting.formatMoney(4999.99, "€", 2, ".", ","); // €4.999,99
accounting.unformat("€ 1.000.000,00", ","); // 1000000
您可以在GitHub上找到它 
7.  我知道这是一个老问题 CodeGo.net,但CMS的答案似乎有一个小小的瑕疵:“。”它只有在货币作品作为小数分隔符。 例如,如果你需要与俄罗斯卢布工作,该字符串将看起来像这样: “1 000,00擦。” 我的解决方案是远不比优雅CMS的,但它应该做的伎俩。
var currency = "1 000,00 rub."; //it works for US-style currency strings as well
var cur_re = /\D*(\d.*?\d)(?:\D+(\d{2}))?\D*$/;
var parts = cur_re.exec(currency);
var number = parseFloat(parts[1].replace(/\D/,'')+'.'+(parts[2]?parts[2]:'00'));
假设: 货币十进制表示法 没有数字的不属于货币值的一部分中的字符串 货币值包含0或2的小数部分的位数* 正则表达式甚至可以处理像“1,999美元和99美分”,虽然它不是一个预期的函数,不应加以依赖。 希望这将有助于 
8.  将字符串转换为十进制:
var myString = '1234.098';

var myInteger = parseInt(myString); // result = 1234
var myNumber = parseFloat(myString); // result = 1234.098
为了减少小数位数:
var myNumber = 1234.098;
myNumber = myNumber.toFixed(2); // result = 1234.09
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值