有没有一种将字符串从任何语言环境转换为数字的本地方法?

时间:2015-01-27 22:15:35

标签: javascript

我知道我可以将数字转换为指定语言环境中的字符串,如此

(1.2).toLocaleString("de-DE") //-> "1,2"

我不知道,或者似乎无法找到,这就是为什么没有办法反过来的原因。例如:

("1,2").fromLocaleString("de-DE").toFloat()

parseFloat("1,2", "de-DE")

我发现解析来自不同语言环境的数字字符串的唯一解决方案是第三方插件。如果浏览器可以在一个方向转换,有没有办法让它在另一个方向转换?

1 个答案:

答案 0 :(得分:1)

定义自己的功能可能更容易。像这样:

function parseFloatSeparator(str, sep) {
    sep = sep || ".";
    str = str.replace(new RegExp("[^0-9"+sep+"]","g"),"");
    if( sep != ".") str = str.replace(sep,".");
    return parseFloat(str);
}