Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8">
- <meta name="viewport" content="width=device-width">
- <title>Sort - one, three, two</title>
- </head>
- <body>
- <script id="jsbin-javascript">
- var num = "zero one two three four five six seven eight nine ten eleven twelve thirteen fourteen fifteen sixteen seventeen eighteen nineteen".split(" ");
- var tens = "twenty thirty forty fifty sixty seventy eighty ninety".split(" ");
- function number2words(n){
- // works for numbers between 0 and 999999
- if(n<20){
- //console.log(num[n]);
- return num[n];
- }
- var digit = n%10;
- if (n < 100){
- // console.log(tens[~~(n/10)-2] + (digit? "-" + num[digit]: ""));
- return tens[~~(n/10)-2] + (digit? "-" + num[digit]: "");
- }
- if (n < 1000) {
- //console.log( num[~~(n/100)] +" hundred" + (n%100 == 0? "": " " + number2words(n%100)));
- return num[~~(n/100)] +" hundred" + (n%100 == 0? "": " " + number2words(n%100));
- }
- }
- const sortByName = arr => {
- const words = {};
- arr.forEach(n => words[n] = num2word(n));
- return arr.sort((a, b) => words[a].localeCompare(words[b]));
- };
- </script>
- <script id="jsbin-source-javascript" type="text/javascript">var num = "zero one two three four five six seven eight nine ten eleven twelve thirteen fourteen fifteen sixteen seventeen eighteen nineteen".split(" ");
- var tens = "twenty thirty forty fifty sixty seventy eighty ninety".split(" ");
- function number2words(n){
- // works for numbers between 0 and 999999
- if(n<20){
- //console.log(num[n]);
- return num[n];
- }
- var digit = n%10;
- if (n < 100){
- // console.log(tens[~~(n/10)-2] + (digit? "-" + num[digit]: ""));
- return tens[~~(n/10)-2] + (digit? "-" + num[digit]: "");
- }
- if (n < 1000) {
- //console.log( num[~~(n/100)] +" hundred" + (n%100 == 0? "": " " + number2words(n%100)));
- return num[~~(n/100)] +" hundred" + (n%100 == 0? "": " " + number2words(n%100));
- }
- }
- const sortByName = arr => {
- const words = {};
- arr.forEach(n => words[n] = num2word(n));
- return arr.sort((a, b) => words[a].localeCompare(words[b]));
- };</script></body>
- </html>
Add Comment
Please, Sign In to add comment