JSFiddle - React, Tailwind, and code Playground

by blowsie

HTML

<input type="text" />
<textarea id="output" cols="100" rows="1"></textarea>

JavaScript

var isCase = function (caseType, value) {
    var bool = false;
    if (
    caseType == "upper") {
        if (value == value.toUpperCase()) {
            bool = true;
        }
    } else if (
    caseType == "lower") {
        if (value == value.toLowerCase()) {
            bool = true;
        }
    }
    return bool;
};

var isVowel = function (value) {
    var bool = false;
    var vowels = "aeiou";
    value = value.toLowerCase();
    if (vowels.indexOf(value) > -1) {
        bool = true;
    }
    return bool;
};



$('input').keyup(function () {
    var $this = $(this);
    var value = $this.val();
    var valueArray = value.split("");
    var output = [];
       var count = 0;
    $.each(valueArray, function (k, v) {
        var isUpper = isCase("upper", v);
     
        if (k == 0 || k == 1 || k == valueArray.length - 1 || isUpper) {
            var append = "";
            var prepend = ""          
            var isAVowel = isVowel(v);
            if (isUpper) {
                prepend += "!";
            } else {
                prepend += "?";
            }
            if (isAVowel) {
                append += "£";
            }
            else{
                append += "$";
            }
            v = prepend + v + append;
            output.push(v);
            count++;
        }
        if ( k == valueArray.length - 1){
             output.push(parseInt([valueArray.length * 100]) + parseInt([valueArray.length * count]))
        }
       
        console.log(k, v)
        
    });

    output = output.join("");




    $("#output").val(output);
});