// Convert numbers to words // copyright 25th July 2006, by Stephen Chapman http://javascript.about.com // permission to use this Javascript on your web page is granted // provided that all of the code (including this copyright notice) is // used exactly as shown (you can change the numbering system if you wish) // I made amendments to produce wording for an Australian Printed Cheque- Replaced POINT with "Dollars and" and Inserted a //new array ndg to return digits for the cents. Added to the Return String "Cents ***" eg.One Hundred Twenty Three Dollars //and 56 Cents **** // American Numbering System var th = ['','Thousand','Million', 'Billion','Trillion']; // uncomment this line for English Number System // var th = ['','thousand','million', 'milliard','billion'];str += dg[n[i]] var ndg = ['0','1','2','3','4', '5','6','7','8','9']; var dg = ['zero','One','Two','Three','Four', 'Five','Six','Seven','Eight','Nine']; var tn = ['Ten','Eleven','Twelve','Thirteen', 'Fourteen','Fifteen','Sixteen', 'Seventeen','Eighteen','Nineteen']; var tw = ['Twenty','Thirty','Forty','Fifty', 'Sixty','Seventy','Eighty','Ninety']; function toWords(s){s = s.toString(); s = s.replace(/[\, ]/g,''); if (s != parseFloat(s)) return 'not a number'; var x = s.indexOf('.'); if (x == -1) x = s.length; if (x > 15) return 'too big'; var n = s.split(''); var str = ''; var sk = 0; for (var i=0; i < x; i++) {if ((x-i)%3==2) {if (n[i] == '1') {str += tn[Number(n[i+1])] + ' '; i++; sk=1;} else if (n[i]!=0) {str += tw[n[i]-2] + ' ';sk=1;}} else if (n[i]!=0) {str += dg[n[i]] +' '; if ((x-i)%3==0) str += 'Hundred ';sk=1;} if ((x-i)%3==1) {if (sk) str += th[(x-i-1)/3] + ' ';sk=0;}} if (x != s.length) {var y = s.length; str += 'Dollars and '; for (var i=x+1; i