Question 11

by Jenni Meiklejohn

HTML

<input type="textbox" id='input' /><input type='button' value='Enqueue' onclick='addToQueue();' />
<br/>
<input type='button' value='Dequeue' onclick='removeFromQueue();' />
<br/>
<div id='output'></div>

JavaScript

function QueueFromStacks() {
	 // Member fields.
   this.arr = [];
		
   this.enqueue = function(value) {
      this.arr.push(value.toString());
   }
   
   this.dequeue = function() {   		
     this.arr.pop();			
   }
   
   this.print = function() {
   		let s = "";
      this.arr.forEach((node) => {
      	s += node.toString();
      });      
      return s;
   }
}

var q = new QueueFromStacks();

function addToQueue() {
  var input = document.getElementById('input').value;
  q.enqueue(input);  
  document.getElementById('output').innerHTML = q.print();
}

function removeFromQueue() {
  q.dequeue();  
  document.getElementById('output').innerHTML = q.print();
}