Circular Queue in javascript
class CircularQueue { constructor(size) { this.element = []; this.size = size this.length = 0 this.front = 0 this.back = -1 }isEmpty() { return (this.length == 0) }enqueue(element) { if (this.length >= this.size) throw (new Error("Maximum length exceeded")) this.back++ this.element[this.back % this.size] = element this.length++ }dequeue() { if (this.isEmpty()) throw (new Error("No elements in the queue")) const value = this.getFront() this.element[this.front % this.size] = null this.front++ this.length-- return value }getFront() { if (this.isEmpty()) throw (new Error("No elements in the queue")) return this.element[this.front % this.size] }clear() { this.element = new Array() this.length = 0 this.back = 0 this.front = -1 }}