小的过滤器

// 金额保留2位小数点

 1 function fomatMoney( money ) {
 2 
 3 
 4                 if(  money.indexOf(',') >= 0  ){
 5                     //如果是已经转过的值
 6                     return money;
 7                 }else{
 8                     var decimalArr = money.split('.');
 9                     if( decimalArr[0] * 1 >= 1  ){
10                         //大于1
11                         //不用加逗号的前几位
12                         var first,
13                         //剩下的数字
14                             shengxiade,
15                             str = '',
16                         //剩下的切得数组
17                             shengxiadeArr,
18                             i,
19                         //准备拼接的整数位
20                             zhengshu,
21                         //准备拼接的小数位
22                             xiaoshu;
23 
24                         first = decimalArr[0].substring( 0 , decimalArr[0].length % 3 );
25                         shengxiade = decimalArr[0].substring( decimalArr[0].length % 3 );
26 
27                         shengxiadeArr = shengxiade.split('');
28 
29                         for( i = 0; i<shengxiadeArr.length; i++  ){
30                             if( ( ( i + 1 ) %3) === 0 ){
31                                 str += shengxiadeArr[i] + ','
32                             }else{
33                                 str += shengxiadeArr[i]
34                             }
35                         }
36 
37                         //如果刚好3的倍数位
38                         if( !first ){
39                             zhengshu =  str;
40                         }else{
41                             zhengshu = first + ',' + str;
42                         }
43                         //如果小数没有
44                         if(  decimalArr[1] === '' ||  !decimalArr[1] ){
45                             xiaoshu = '00';
46                         }else if( decimalArr[1].length < 2 ){
47                             //小于2位
48                             xiaoshu = decimalArr[1] + 0;
49                         }else if( decimalArr[1].length > 2 ){
50                             xiaoshu = decimalArr[1].substring(0,2);
51                         }else{
52                             xiaoshu = decimalArr[1];
53                         }
54 
55                         return zhengshu.substring( 0,zhengshu.length - 1 ) + '.' + xiaoshu;
56 
57                     }else{
58                         //小于1
59                         return '0.' + decimalArr[1].substring(0,2);
60                     }
61                 }
62 
63 
64 
65             }
保留两位小数点

 

posted @ 2015-12-31 23:55  小菜鸡12315  阅读(167)  评论(0编辑  收藏  举报