Coder Wrap provides free to use snippets Coder Wrap provides free to use snippets

Back to HTML
Preview Source Code
Download
HTML
CSS
/**Typeo CSS Start**/
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap');
*{ box-sizing: border-box;}
/**Typeo CSS End**/
.convert-word{ min-height: 300px; font-size: 18px; max-width: 560px; background-color: #f8f8f8; font-family:'Poppins'; margin: auto; padding: 15px;}
.convert-word input{ outline: none; font-family:'Poppins'; width: 100%; padding: 10px 15px; border: #ccc 1px solid;}
.convert-word input:focus { border-color:#000;}
.convert-word .numberresult{ color:#3f8513; }
JS
function onlyNumbers(evt) {
 var e = event || evt; // For trans-browser compatibility
 var charCode = e.which || e.keyCode;
 if (charCode > 31 && (charCode < 48 || charCode > 57))
  return false;
  return true;
}
function NumToWord(inputNumber, outputControl) {
 var str = new String(inputNumber)
 var splt = str.split("");
 var rev = splt.reverse();
 var once = ['Zero', ' One', ' Two', ' Three', ' Four', ' Five', ' Six', ' Seven', ' Eight', ' Nine'];
 var twos = ['Ten', ' Eleven', ' Twelve', ' Thirteen', ' Fourteen', ' Fifteen', ' Sixteen', ' Seventeen', ' Eighteen', ' Nineteen'];
 var tens = ['', 'Ten', ' Twenty', ' Thirty', ' Forty', ' Fifty', ' Sixty', ' Seventy', ' Eighty', ' Ninety'];
 numLength = rev.length;
 var word = new Array();
 var j = 0;
 for (i = 0; i < numLength; i++) {
  switch (i) {
        case 0:
            if ((rev[i] == 0) || (rev[i + 1] == 1)) {
                word[j] = '';
            }
            else {
                word[j] = '' + once[rev[i]];
            }
            word[j] = word[j];
            break;
        case 1:
            aboveTens();
            break;
        case 2:
            if (rev[i] == 0) {
                word[j] = '';
            }
            else if ((rev[i - 1] == 0) || (rev[i - 2] == 0)) {
                word[j] = once[rev[i]] + " Hundred ";
            }
            else {
                word[j] = once[rev[i]] + " Hundred and";
            }
            break;
        case 3:
            if (rev[i] == 0 || rev[i + 1] == 1) {
                word[j] = '';
            }
            else {
                word[j] = once[rev[i]];
            }
            if ((rev[i + 1] != 0) || (rev[i] > 0)) {
                word[j] = word[j] + " Thousand";
            }
            break;    
        case 4:
            aboveTens();
            break;
        case 5:
            if ((rev[i] == 0) || (rev[i + 1] == 1)) {
                word[j] = '';
            }
            else {
                word[j] = once[rev[i]];
            }
            if (rev[i + 1] !== '0' || rev[i] > '0') {
                word[j] = word[j] + " Lakh";
            }
            break;
        case 6:
            aboveTens();
            break;
        case 7:
            if ((rev[i] == 0) || (rev[i + 1] == 1)) {
                word[j] = '';
            }
            else {
                word[j] = once[rev[i]];
            }
            if (rev[i + 1] !== '0' || rev[i] > '0') {
                word[j] = word[j] + " Crore";
            }                
            break;
        case 8:
            aboveTens();
            break;
        default: break;
    }
    j++;
  }

    function aboveTens() {
        if (rev[i] == 0) { word[j] = ''; }
        else if (rev[i] == 1) { word[j] = twos[rev[i - 1]]; }
        else { word[j] = tens[rev[i]]; }
    }

    word.reverse();
    var finalOutput = '';
    for (i = 0; i < numLength; i++) {
        finalOutput = finalOutput + word[i];
    }
    document.getElementById(outputControl).innerHTML = finalOutput;
}

Related Snippets

Leave a comment

Your email address will not be published. Required fields are marked *