您的位置:首页 > Web前端

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

2016-04-27 09:44 621 查看
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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: