1. /*随机数范围*/
    2. random (min, max) {
    3. if (arguments.length === 2) {
    4. return Math.floor(min + Math.random() * ( (max+1) - min ))
    5. }else{
    6. return null;
    7. }
    8. }
    9. /*将阿拉伯数字翻译成中文的大写数字*/
    10. numberToChinese (num) {
    11. var AA = new Array("零", "一", "二", "三", "四", "五", "六", "七", "八", "九", "十");
    12. var BB = new Array("", "十", "百", "仟", "萬", "億", "点", "");
    13. var a = ("" + num).replace(/(^0*)/g, "").split("."),
    14. k = 0,
    15. re = "";
    16. for(var i = a[0].length - 1; i >= 0; i--) {
    17. switch(k) {
    18. case 0:
    19. re = BB[7] + re;
    20. break;
    21. case 4:
    22. if(!new RegExp("0{4}//d{" + (a[0].length - i - 1) + "}$")
    23. .test(a[0]))
    24. re = BB[4] + re;
    25. break;
    26. case 8:
    27. re = BB[5] + re;
    28. BB[7] = BB[5];
    29. k = 0;
    30. break;
    31. }
    32. if(k % 4 == 2 && a[0].charAt(i + 2) != 0 && a[0].charAt(i + 1) == 0)
    33. re = AA[0] + re;
    34. if(a[0].charAt(i) != 0)
    35. re = AA[a[0].charAt(i)] + BB[k % 4] + re;
    36. k++;
    37. }
    38. if(a.length > 1) // 加上小数部分(如果有小数部分)
    39. {
    40. re += BB[6];
    41. for(var i = 0; i < a[1].length; i++)
    42. re += AA[a[1].charAt(i)];
    43. }
    44. if(re == '一十')
    45. re = "十";
    46. if(re.match(/^一/) && re.length == 3)
    47. re = re.replace("一", "");
    48. return re;
    49. }
    50. /*将数字转换为大写金额*/
    51. changeToChinese (Num) {
    52. //判断如果传递进来的不是字符的话转换为字符
    53. if(typeof Num == "number") {
    54. Num = new String(Num);
    55. };
    56. Num = Num.replace(/,/g, "") //替换tomoney()中的“,”
    57. Num = Num.replace(/ /g, "") //替换tomoney()中的空格
    58. Num = Num.replace(/¥/g, "") //替换掉可能出现的¥字符
    59. if(isNaN(Num)) { //验证输入的字符是否为数字
    60. //alert("请检查小写金额是否正确");
    61. return "";
    62. };
    63. //字符处理完毕后开始转换,采用前后两部分分别转换
    64. var part = String(Num).split(".");
    65. var newchar = "";
    66. //小数点前进行转化
    67. for(var i = part[0].length - 1; i >= 0; i--) {
    68. if(part[0].length > 10) {
    69. return "";
    70. //若数量超过拾亿单位,提示
    71. }
    72. var tmpnewchar = ""
    73. var perchar = part[0].charAt(i);
    74. switch(perchar) {
    75. case "0":
    76. tmpnewchar = "零" + tmpnewchar;
    77. break;
    78. case "1":
    79. tmpnewchar = "壹" + tmpnewchar;
    80. break;
    81. case "2":
    82. tmpnewchar = "贰" + tmpnewchar;
    83. break;
    84. case "3":
    85. tmpnewchar = "叁" + tmpnewchar;
    86. break;
    87. case "4":
    88. tmpnewchar = "肆" + tmpnewchar;
    89. break;
    90. case "5":
    91. tmpnewchar = "伍" + tmpnewchar;
    92. break;
    93. case "6":
    94. tmpnewchar = "陆" + tmpnewchar;
    95. break;
    96. case "7":
    97. tmpnewchar = "柒" + tmpnewchar;
    98. break;
    99. case "8":
    100. tmpnewchar = "捌" + tmpnewchar;
    101. break;
    102. case "9":
    103. tmpnewchar = "玖" + tmpnewchar;
    104. break;
    105. }
    106. switch(part[0].length - i - 1) {
    107. case 0:
    108. tmpnewchar = tmpnewchar + "元";
    109. break;
    110. case 1:
    111. if(perchar != 0) tmpnewchar = tmpnewchar + "拾";
    112. break;
    113. case 2:
    114. if(perchar != 0) tmpnewchar = tmpnewchar + "佰";
    115. break;
    116. case 3:
    117. if(perchar != 0) tmpnewchar = tmpnewchar + "仟";
    118. break;
    119. case 4:
    120. tmpnewchar = tmpnewchar + "万";
    121. break;
    122. case 5:
    123. if(perchar != 0) tmpnewchar = tmpnewchar + "拾";
    124. break;
    125. case 6:
    126. if(perchar != 0) tmpnewchar = tmpnewchar + "佰";
    127. break;
    128. case 7:
    129. if(perchar != 0) tmpnewchar = tmpnewchar + "仟";
    130. break;
    131. case 8:
    132. tmpnewchar = tmpnewchar + "亿";
    133. break;
    134. case 9:
    135. tmpnewchar = tmpnewchar + "拾";
    136. break;
    137. }
    138. var newchar = tmpnewchar + newchar;
    139. }
    140. //小数点之后进行转化
    141. if(Num.indexOf(".") != -1) {
    142. if(part[1].length > 2) {
    143. // alert("小数点之后只能保留两位,系统将自动截断");
    144. part[1] = part[1].substr(0, 2)
    145. }
    146. for(i = 0; i < part[1].length; i++) {
    147. tmpnewchar = ""
    148. perchar = part[1].charAt(i)
    149. switch(perchar) {
    150. case "0":
    151. tmpnewchar = "零" + tmpnewchar;
    152. break;
    153. case "1":
    154. tmpnewchar = "壹" + tmpnewchar;
    155. break;
    156. case "2":
    157. tmpnewchar = "贰" + tmpnewchar;
    158. break;
    159. case "3":
    160. tmpnewchar = "叁" + tmpnewchar;
    161. break;
    162. case "4":
    163. tmpnewchar = "肆" + tmpnewchar;
    164. break;
    165. case "5":
    166. tmpnewchar = "伍" + tmpnewchar;
    167. break;
    168. case "6":
    169. tmpnewchar = "陆" + tmpnewchar;
    170. break;
    171. case "7":
    172. tmpnewchar = "柒" + tmpnewchar;
    173. break;
    174. case "8":
    175. tmpnewchar = "捌" + tmpnewchar;
    176. break;
    177. case "9":
    178. tmpnewchar = "玖" + tmpnewchar;
    179. break;
    180. }
    181. if(i == 0) tmpnewchar = tmpnewchar + "角";
    182. if(i == 1) tmpnewchar = tmpnewchar + "分";
    183. newchar = newchar + tmpnewchar;
    184. }
    185. }
    186. //替换所有无用汉字
    187. while(newchar.search("零零") != -1)
    188. newchar = newchar.replace("零零", "零");
    189. newchar = newchar.replace("零亿", "亿");
    190. newchar = newchar.replace("亿万", "亿");
    191. newchar = newchar.replace("零万", "万");
    192. newchar = newchar.replace("零元", "元");
    193. newchar = newchar.replace("零角", "");
    194. newchar = newchar.replace("零分", "");
    195. if(newchar.charAt(newchar.length - 1) == "元") {
    196. newchar = newchar + "整"
    197. }
    198. return newchar;
    199. }