I am new to Javascript and so I am just trying to implement a basic queue, but I get the error: Uncaught TypeError: Illegal Constructor. I really don’t know what is wrong. Here is my code.
class node{
constructor(id,value){
this.id = id;
this.value = value;
this.next = null;
}
getId(){
return this.id;
}
getValue(){
return this.value;
}
setValue(value){
this.value = value;
}
getNext(){
return this.next;
}
setNext(next){
this.next = next;
}
}
class queue{
constructor(){
this.head = null;
this.size = 0;
this.tail = null;
}
enqueue(value){
let newNode = new Node(this.size,value); //This is line 39
if (this.size === 0){
this.head = newNode;
this.tail = newNode;
this.size++;
return;
}
this.tail.next=newNode;
this.tail = newNode;
this.size +=1;
}
dequeue(){
if (this.size > 0){
let temp = this.head.getValue();
this.head = this.head.getNext();
this.size --;
return temp;
}
return null;
}
}
var q= new queue();
q.enqueue(1)
console.log(q.dequeue);
It throws it on the line in enqueue where I make a new node. Is there some limitation to making objects in objects that I don’t know? I have attached the error message. Line 39 in the where I make a new node object.Error Message