ericleesky
|
分享:
x0
|
[JScript][讨论] 数字转换英文字句
‧步骤一:将以下原始码加入<HEAD>与</HEAD>标签之间.
<!-- Begin var n = ""; function validate(input) { if (input.length == 0) { alert ('Please Enter A Number.'); document.myform.textver.value = ""; return true; } else convert(input); } function d1(x) { // single digit terms switch(x) { case Ɔ': n= ""; break; case Ƈ': n= " One "; break; case ƈ': n= " Two "; break; case Ɖ': n= " Three "; break; case Ɗ': n= " Four "; break; case Ƌ': n= " Five "; break; case ƌ': n= " Six "; break; case ƍ': n= " Seven "; break; case Ǝ': n= " Eight "; break; case Ə': n= " Nine "; break; default: n = "Not a Number"; } return n; } function d2(x) { // 10x digit terms switch(x) { case Ɔ': n= ""; break; case Ƈ': n= ""; break; case ƈ': n= " Twenty "; break; case Ɖ': n= " Thirty "; break; case Ɗ': n= " Forty "; break; case Ƌ': n= " Fifty "; break; case ƌ': n= " Sixty "; break; case ƍ': n= " Seventy "; break; case Ǝ': n= " Eighty "; break; case Ə': n= " Ninety "; break; default: n = "Not a Number"; } return n; } function d3(x) { // teen digit terms switch(x) { case Ɔ': n= " Ten "; break; case Ƈ': n= " Eleven "; break; case ƈ': n= " Twelve "; break; case Ɖ': n= " Thirteen "; break; case Ɗ': n= " Fourteen "; break; case Ƌ': n= " Fifteen "; break; case ƌ': n= " Sixteen "; break; case ƍ': n= " Seventeen "; break; case Ǝ': n= " Eighteen "; break; case Ə': n= " Nineteen "; break; default: n= "Not a Number"; } return n; } function convert(input) { var inputlength = input.length; var x = 0; var teen1 = ""; var teen2 = ""; var teen3 = ""; var numName = ""; var invalidNum = ""; var a1 = ""; // for insertion of million, thousand, hundred var a2 = ""; var a3 = ""; var a4 = ""; var a5 = ""; digit = new Array(inputlength); // stores output for (i = 0; i < inputlength; i++) { // puts digits into array digit[inputlength - i] = input.charAt(i)}; store = new Array(9); // store output for (i = 0; i < inputlength; i++) { x= inputlength - i; switch (x) { // assign text to each digit case x=9: d1(digit[x]); store[x] = n; break; case x=8: if (digit[x] == "1") {teen3 = "yes"} else {teen3 = ""}; d2(digit[x]); store[x] = n; break; case x=7: if (teen3 == "yes") {teen3 = ""; d3(digit[x])} else {d1(digit[x])}; store[x] = n; break; case x=6: d1(digit[x]); store[x] = n; break; case x=5: if (digit[x] == "1") {teen2 = "yes"} else {teen2 = ""}; d2(digit[x]); store[x] = n; break; case x=4: if (teen2 == "yes") {teen2 = ""; d3(digit[x])} else {d1(digit[x])}; store[x] = n; break; case x=3: d1(digit[x]); store[x] = n; break; case x=2: if (digit[x] == "1") {teen1 = "yes"} else {teen1 = ""}; d2(digit[x]); store[x] = n; break; case x=1: if (teen1 == "yes") {teen1 = "";d3(digit[x])} else {d1(digit[x])}; store[x] = n; break; } if (store[x] == "Not a Number"){invalidNum = "yes"}; switch (inputlength){ case 1: store[2] = ""; case 2: store[3] = ""; case 3: store[4] = ""; case 4: store[5] = ""; case 5: store[6] = ""; case 6: store[7] = ""; case 7: store[8] = ""; case 8: store[9] = ""; } if (store[9] != "") { a1 =" Hundred, "} else {a1 = ""}; if ((store[9] != "")||(store[8] != "")||(store[7] != "")) { a2 =" Million, "} else {a2 = ""}; if (store[6] != "") { a3 =" Hundred "} else {a3 = ""}; if ((store[6] != "")||(store[5] != "")||(store[4] != "")) { a4 =" Thousand, "} else {a4 = ""}; if (store[3] != "") { a5 =" Hundred "} else {a5 = ""}; } // add up text, cancel if invalid input found if (invalidNum == "yes"){numName = "Invalid Input"} else { numName = store[9] + a1 + store[8] + store[7] + a2 + store[6] + a3 + store[5] + store[4] + a4 + store[3] + a5 + store[2] + store[1]; } store[1] = ""; store[2] = ""; store[3] = ""; store[4] = ""; store[5] = ""; store[6] = ""; store[7] = ""; store[8] = ""; store[9] = ""; if (numName == ""){numName = "Zero"}; document.myform.textver.value = numName; return true; } // End --> </script>
‧步骤二:将以下原始码加入网页中欲出现转换器的地方即可.
<center><form name="myform"> <table border=0> <tr> <td width="92">输入数字:</td> <td width="385"><input name="numver" size=9 maxlength=9> <input onfiltered="return validate(document.myform.numver.value)" type="button" value="转换成英文"></td></tr> <tr> <td>英文说法:</td> <td><input name="textver" size=50 maxlength=50></td></tr> <tr> <td align=middle colspan=2><font color="#CC0000">数字能接受的范围 0 and 999,999,999</font></td> </tr> </table></form></center>
|