1. class Queue {
  2. constructor() {
  3. this.items = []; // Use an array as a simple queue implementation
  4. }
  5. enqueue(element) {
  6. this.items.push(element); // Add to the end
  7. }
  8. dequeue() {
  9. if (this.isEmpty()) {
  10. return { error: "Queue is empty" }; // Simple error message
  11. }
  12. return this.items.shift(); // Remove from the beginning
  13. }
  14. peek() {
  15. if (this.isEmpty()) {
  16. return { error: "Queue is empty" }; // Simple error message
  17. }
  18. return this.items[0];
  19. }
  20. isEmpty() {
  21. return this.items.length === 0;
  22. }
  23. size() {
  24. return this.items.length;
  25. }
  26. }
  27. // Example Usage (for development/testing)
  28. const myQueue = new Queue();
  29. myQueue.enqueue("item1");
  30. myQueue.enqueue("item2");
  31. console.log("Dequeued:", myQueue.dequeue()); // Output: item1
  32. console.log("Dequeued:", myQueue.dequeue()); // Output: item2
  33. console.log("Is empty:", myQueue.isEmpty()); // Output: true
  34. console.log("Dequeued:", myQueue.dequeue()); // Output: { error: "Queue is empty" }

Add your comment