JSFiddle - React, Tailwind, and code Playground

by wooozy

HTML

<h2/> Assignment 5! <h2/>
<p id='EndReport'></p>

JavaScript

var Node = function(_content) {
      this.next = null;
      this.last = null;
      this.content = _content;

    }
  var Stack = function() {
    this.head = null;
    this.top = null;
    
    this.push = function(_content) {
      
      if (this.head == null) {
        this.head = new Node(_content);
        this.top = this.head;
        return this;
      }
      
      var addedNode = new Node(_content);
      addedNode.last = this.top;   
      this.top.next = addedNode;   
      this.top = addedNode;     
      return this;
    }


    this.pop = function() {
      if (this.head == null) {
        
        return null;
      }

			var a = this.top.content;

      if(this.top == this.head){
        
				    this.head = null;
    				this.top = null;
           	return a;
      }else{
        this.top = this.top.last;
        this.top.next = null;      
      	return a;
      }
    }


    this.toString = function() {
      var str = "";
      var node = this.head;
      if (this.head == null){
        str = "Stack is Empty";
      }else{
      
      }
      while (node != null) {
        str += node.content + "&nbsp";
        node = node.next;
      }
      return str;
    }
    
    this.countElements = function() {
      var countX = 0;
      var node = this.head;
      while (node != null) {
        node = node.next;
        countX= countX+1;
      }
      return countX;
    }
  }

  var CalculationsButton = '<input type="textbox" id="conditionOutput" value="+" size="1"/><input type="button" value="Start Stacking :)" onClick="StartCalculations();" />';

  var DeleteTopButton = '<input type="button" value="Take away Element" onClick="DeleteTopElement();" />';
  
  var AddButtonStack = '<input type="textbox" id="extraValue" value="10" size="3"/><input type="button" value="Start Stacking :)" onClick="attachStack();" />';


function attachStack() {
  var extraValue = document.getElementById("extraValue").value;
  report = "";
  report += "Added:" + ...