JSFiddle - React, Tailwind, and code Playground

by Erik East

HTML

<h1>Stack Calculator</h1>
<p>Give your pennance (max 20 characters):</p><br/>

<p id="demo"></p>
<input type='text' id='stuffing' size='20' onkeypress='captureEnter(event);'><br/>

JavaScript

//<input type='button' value="Push Value" id='add' onclick="">

var stackList = [];
var input = '';

function captureEnter(e){
        if(e.keyCode === 13){
            ultimateMathFunction();
        }
        return false;
}
function ultimateMathFunction(){
    var blaf = document.getElementById('stuffing').value;
    if(!isNaN(parseInt(blaf, 10))){
        stackList.push(blaf);
        
    }else if(blaf=='*'){
        var op1 = stackList.pop();
        var op2 = stackList.pop();
        var mult = op1 * op2;
        stackList.push(mult);
        
    }else if(blaf=='+'){
        var op3 = stackList.pop();
        var op4 = stackList.pop();
        var add = parseInt(op3) + parseInt(op4);
        stackList.push(add);
        
    }else if(blaf=='-'){
        var op5 = stackList.pop();
        var op6 = stackList.pop();
        var sub = op5 - op6;
        stackList.push(sub);
        
    }else if(blaf=='/'){
        var op7 = stackList.pop();
        var op8 = stackList.pop();
        var div = op7 / op8;
        stackList.push(div);
    }
    document.getElementById('stuffing').value = '';
    printStack();
}

function printStack (){
    document.getElementById('demo').innerHTML = '' ;
    for(var i= 0; i<stackList.length; i++){
        document.getElementById('demo').innerHTML += stackList[i] + ' -- ';
    }
}