letters

by sabof

HTML

<div><input type='button' id="start" value='Start' /></div>
<div><input type='button' id="stop" value='Stop' /></div>
<div id="output">
    
</div>

CSS

#ouput { font-weight:bold;}

JavaScript

var finalList = new Array();
var inputList = new Array();
function dynamic_buttons() {
    var start_button = document.getElementById('start');
    var stop_button = document.getElementById('stop');
    start_button.onkeypress = log_keypress;    
    stop_button.onclick = ki;    
};

dynamic_buttons();

function log_keypress() {     
    inputList.push(String.fromCharCode(event.keyCode)); 
    finalList.push(String.fromCharCode(event.keyCode));
    console.log(inputList);
}
var numOfTimes = 0;
function ki() {
    var str = finalList.join(",");
    var patt = /[a-zA-Z]/g;
    
    var output = document.getElementById("output");
    output.innerHTML = '';
    
    for(index = 0; index< inputList.length; index++)
    {     
        patt.test(str);
        if(str != null && patt.test(str) && inputList[index].trim().length > 0)
        {
            
            var match1 = str.match(new RegExp(inputList[index], "g"));
            if(match1 != null)
            {
                
            output.innerHTML = output.innerHTML + ('<span>letter ' + inputList[index] + " was pressed " + match1.length + " times</span><br/>");
            str = str.replace(new RegExp(inputList[index], "g"), '');
            }
        }
    }
    if(finalList.length > 0)
    {
     finalList.splice(0, finalList.length);
    }
    if(inputList.length > 0)
    {
    inputList.splice(0, inputList.length);
    }
}