[乐意黎原创] Local 为德文时,小数点(点号)变成逗号时的JS 前端处理方法

1. server local is en, client machine local is de, show 0.5, input value is 0,5

2. server local is en, client machine local is en, show 0.5, input value is 0.5

3. server local is de, client machine local is de, show 0,5, input value is 0,5

4. server local is de, client machine local is en, show 0,5, input value is 0.5


如上面的环境,德文环境下,输入的小数0.5 变成了0,5. 小数点点号变成了逗号. 此时可以使用 replace(/,/g,".")来处理获取的值.

详细过程如下: 


//author: http://blog.csdn.net/aerchi

1. 当把本地机器的Local 设置为 germany.

 



2.  此时键盘布局为德文布局。 




3.  显示如图: 

   

4. 输入的时候,显示




比如输入 0.5,   此时 显示为0,5 前端拿到的数据 为 0,5.  

//author: http://blog.csdn.net/aerchi

var inputVal = 0,5;

此时 isNAN 和 parseFloat 均无法处理 0,5.

可以用正则  .replace(/,/g,".") 来处理后再使用。


如: isNAN (inputVal..replace(/,/g,"."))  

         parseFloat(inputVal..replace(/,/g,".")) 

经过这样处理,完美解决小数点变成逗号下,这两个方法无法使用的问题。


另:

写一个函数,要求对如果数字是负数则转化为正数,要求统一保留两位小数,如果没有小数显示.00.

function floatFormat(amt) {

    if(isNaN(amt))
    {

        return 0.00; //如果不是数字,返回0.00
    }

    amt = Math.abs(amt); //取绝对值

    return(amt.toFixed(2)); //保留两位小数
}


乐意黎(http://blog.csdn.net/aerchi)原创,禁止转载。

本文地址: http://blog.csdn.net/aerchi/article/details/51258476


发布了430 篇原创文章 · 获赞 415 · 访问量 925万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览