Mặc dù mảng JS cung cấp đầy đủ chức năng Queue, hãy tự triển khai lớp Queue. Lớp sẽ có các hàm:
enqueue(element): Thêm phần tử vào queuedequeue(): Xóa phần tử từ queuepeek(): Trả về phần tử đầu queueisFull(): Kiểm tra đạt giới hạnisEmpty(): Kiểm tra queue rỗngclear(): Xóa tất cảdisplay(): Hiển thị nội dung
Bắt đầu định nghĩa lớp đơn giản với constructor nhận maxSize và helper function. Cũng như Stack, dùng mảng để triển khai Queue.
Ví dụ - Khởi tạo lớp Queue
class Queue { constructor(maxSize) { if (isNaN(maxSize)) { maxSize = 10; } this.maxSize = maxSize; this.container = []; } display() { console.log(this.container); } isEmpty(){ return this.container.length === 0; } isFull() { return this.container.length >= this.maxSize; } }
isFull kiểm tra length >= maxSize. isEmpty kiểm tra length === 0. Các hàm tiếp theo sẽ nằm trong lớp Queue.