小的过滤器
// 金额保留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 }