JavaScript功能片段收藏

1、数字转人民币(小写)

  
  
  
  
  1. /**

  2. * 把数字转换成RMB格式

  3. * @param v

  4. * @returns {String}

  5. */

  6. function RMBMoney(v){  

  7.    v = (Math.round((v-0)*100))/100;  

  8.    v = (v == Math.floor(v)) ? v + ".00" : ((v*10 == Math.floor(v*10)) ? v + "0" : v);  

  9.    v = String(v);  

  10. var ps = v.split('.');  

  11. var whole = ps[0];  

  12. var sub = ps[1] ? '.'+ ps[1] : '.00';  

  13. var r = /(\d+)(\d{3})/;  

  14. while (r.test(whole)) {  

  15.        whole = whole.replace(r, '$1' + ',' + '$2');  

  16.    }  

  17.    v = whole + sub;  

  18. if(v.charAt(0) == '-'){  

  19. return'-¥' + v.substr(1);  

  20.    }  

  21. return"¥" +  v;  

  22. }

2、数字转大写人民币

  
  
  
  
  1. /**

  2. * 数字转大写RMB(以下4个函数)

  3. * @param n

  4. * @returns

  5. */

  6. function i2c(n) {  

  7. if (typeof (n) == "number") {  

  8. if (-1 == n.toString().indexOf(".")) {  

  9. return seti2c(n);  

  10.        } else {  

  11. var i, istr, f, fstr, a, rstr;  

  12.            a = n.toString().split(".");  

  13.            i = a[0];  

  14.            f = a[1];  

  15.            istr = seti2c(i);  

  16.            fstr = setf2c(f);  

  17.            rstr = istr + fstr;  

  18.            rstr = rstr.replace(/^元/, "");  

  19. return rstr;  

  20.        }  

  21.    } else {  

  22. return"---";  

  23.    }  

  24. }  

  25. function seti2c(n) {  

  26. var ns = n.toString();  

  27. var tempstr = "";  

  28. for ( var i = 1; i < ns.length + 1; i++) {  

  29. switch (i) {  

  30. case 1:  

  31. var t = ns.substr(ns.length - i, 1);  

  32. if (t != "0") {  

  33.                tempstr = t + "元" + tempstr;  

  34.            } else {  

  35.                tempstr = "元" + tempstr;  

  36.            }  

  37. break;  

  38. case 2:  

  39. var t = ns.substr(ns.length - i, 1);  

  40. if (t != "0") {  

  41.                tempstr = t + "拾" + tempstr;  

  42.            } else {  

  43.                tempstr = "0" + tempstr;  

  44.            }  

  45. break;  

  46. case 3:  

  47. var t = ns.substr(ns.length - i, 1);  

  48. if (t != "0") {  

  49.                tempstr = t + "佰" + tempstr;  

  50.            } else {  

  51.                tempstr = "0" + tempstr;  

  52.            }  

  53. break;  

  54. case 4:  

  55. var t = ns.substr(ns.length - i, 1);  

  56. if (t != "0") {  

  57.                tempstr = t + "仟" + tempstr;  

  58.            } else {  

  59.                tempstr = "0" + tempstr;  

  60.            }  

  61. break;  

  62. case 5:  

  63. var t = ns.substr(ns.length - i, 1);  

  64. if (t != "0") {  

  65.                tempstr = t + "万" + tempstr;  

  66.            } else {  

  67.                tempstr = "万" + tempstr;  

  68.            }  

  69. break;  

  70. case 6:  

  71. var t = ns.substr(ns.length - i, 1);  

  72. if (t != "0") {  

  73.                tempstr = t + "拾" + tempstr;  

  74.            } else {  

  75.                tempstr = "0" + tempstr;  

  76.            }  

  77. break;  

  78. case 7:  

  79. var t = ns.substr(ns.length - i, 1);  

  80. if (t != "0") {  

  81.                tempstr = t + "佰" + tempstr;  

  82.            } else {  

  83.                tempstr = "0" + tempstr;  

  84.            }  

  85. break;  

  86. case 8:  

  87. var t = ns.substr(ns.length - i, 1);  

  88. if (t != "0") {  

  89.                tempstr = t + "仟" + tempstr;  

  90.            } else {  

  91.                tempstr = "0" + tempstr;  

  92.            }  

  93. break;  

  94. case 9:  

  95. var t = ns.substr(ns.length - i, 1);  

  96. if (t != "0") {  

  97.                tempstr = t + "亿" + tempstr;  

  98.            } else {  

  99.                tempstr = "亿" + tempstr;  

  100.            }  

  101. break;  

  102. case 10:  

  103. var t = ns.substr(ns.length - i, 1);  

  104. if (t != "0") {  

  105.                tempstr = t + "拾" + tempstr;  

  106.            } else {  

  107.                tempstr = "0" + tempstr;  

  108.            }  

  109. break;  

  110. case 11:  

  111. var t = ns.substr(ns.length - i, 1);  

  112. if (t != "0") {  

  113.                tempstr = t + "佰" + tempstr;  

  114.            } else {  

  115.                tempstr = "0" + tempstr;  

  116.            }  

  117. break;  

  118. case 12:  

  119. var t = ns.substr(ns.length - i, 1);  

  120. if (t != "0") {  

  121.                tempstr = t + "仟" + tempstr;  

  122.            } else {  

  123.                tempstr = "0" + tempstr;  

  124.            }  

  125. break;  

  126. default:  

  127. break;  

  128.        }  

  129.    }  

  130. return g2b(tempstr);  

  131. }  

  132. function setf2c(n) {  

  133. var ns = n.toString();  

  134. var tempstr = "";  

  135. for ( var i = 0; i < ns.length; i++) {  

  136. switch (i) {  

  137. case 0:  

  138. var t = ns.substr(i, 1);  

  139. if (t != "0") {  

  140.                tempstr += t + "角";  

  141.            } else {  

  142.                tempstr += "0";  

  143.            }  

  144. break;  

  145. case 1:  

  146. var t = ns.substr(i, 1);  

  147. if (t != "0") {  

  148.                tempstr += t + "分";  

  149.            }  

  150. break;  

  151. default:  

  152. break;  

  153.        }  

  154.    }  

  155. return g2b(tempstr);  

  156. }  

  157. function g2b(s) {  

  158.    rs = s.replace(/0+/g, "0");  

  159.    rs = rs.replace(/0(元|万|亿)/g, "$1");  

  160.    rs = rs.replace("亿万", "亿");  

  161.    rs = rs.replace(/0/g, "零");  

  162.    rs = rs.replace(/1/g, "壹");  

  163.    rs = rs.replace(/2/g, "贰");  

  164.    rs = rs.replace(/3/g, "叁");  

  165.    rs = rs.replace(/4/g, "肆");  

  166.    rs = rs.replace(/5/g, "伍");  

  167.    rs = rs.replace(/6/g, "陆");  

  168.    rs = rs.replace(/7/g, "柒");  

  169.    rs = rs.replace(/8/g, "捌");  

  170.    rs = rs.replace(/9/g, "玖");  

  171. return rs;  

  172. }

3、汉字转拼音(简拼+全拼)

下载地址:http://img1.51cto.com/attachment/201204/67690_1334811843.zip

  
  
  
  
  1. /**

  2. * @基本描述 汉字转拼音--全拼

  3. * @参数列表 @param l1

  4. * @参数列表 @returns {String}    

  5. * @return String

  6. * @throws  

  7. * @since 1.0.0

  8. */

  9. function CC2QP(l1);

  10. /**

  11. * @基本描述 汉字转拼音--简拼

  12. * @参数列表 @param l1

  13. * @参数列表 @returns {String}    

  14. * @return String

  15. * @throws  

  16. * @since 1.0.0

  17. */

  18. function CC2JP(l1);

4、IE6下字符串转成日期类型出现NaN问题

function parseISO8601(dateStringInRange) {
  var isoExp = /^\s*(\d{4})-(\d\d)-(\d\d)\s*$/,
  date = new Date(NaN), month,
  parts = isoExp.exec(dateStringInRange);
  if(parts) {
month = +parts[2];
date.setFullYear(parts[1], month - 1, parts[3]);
if(month != date.getMonth() + 1) {
        date.setTime(NaN);
}
  }
  return date;
}

5、金额格式化为XXX,XXX,XXX.XX

function formatNum(num,n)
{
    num = String(num.toFixed(n));
    var re = /(-?\d+)(\d{3})/;
    while(re.test(num)) num = num.replace(re,"$1,$2")
    return num;
}
document.write(formatNum(1234005651.789,2));


你可能感兴趣的:(拼音,v,人民币)