Computer >> Máy Tính >  >> Lập trình >> Javascript

Xóa các phần tử của Ngăn xếp trong Javascript


Hãy xem xét một lớp ngăn xếp đơn giản trong Javascript.

Ví dụ

class Stack {
   constructor(maxSize) {
      // Set default max size if not provided
      if (isNaN(maxSize)) {
         maxSize = 10;
      }
      this.maxSize = maxSize; // Init an array that'll contain the stack values.
      this.container = [];
   }

   // A method just to see the contents while we develop this class
   display() {
      console.log(this.container);
   }

   // Checking if the array is empty
   isEmpty() {
      return this.container.length === 0;
   }
   
   // Check if array is full
   isFull() {
      return this.container.length >= maxSize;
   }

   push(element) {
      // Check if stack is full
      if (this.isFull()) {
         console.log("Stack Overflow!");
         return;
      }
      this.container.push(element);
   }

   pop() {
      // Check if empty
      if (this.isEmpty()) {
         console.log("Stack Underflow!");
         return;
      }
      this.container.pop();
   }
   peek() {
      if (isEmpty()) {
         console.log("Stack Underflow!");
         return;
      }
      return this.container[this.container.length - 1];
   }
}

Đây là isFull hàm chỉ kiểm tra xem độ dài của vùng chứa có bằng hoặc hơn maxSize hay không và trả về tương ứng. isEmpty chức năng kiểm tra xem kích thước của vùng chứa có bằng 0. Các chức năng Push và Pop được sử dụng để thêm và xóa các phần tử mới khỏi ngăn xếp tương ứng hay không.

Trong phần này, chúng ta sẽ thêm thao tác CLEAR trong lớp này. Chúng ta có thể xóa nội dung chỉ bằng cách gán lại phần tử vùng chứa vào một mảng trống. Ví dụ:

Ví dụ

clear() {
   this.container = [];
}

Bạn có thể kiểm tra xem chức năng này có hoạt động tốt hay không bằng cách sử dụng -

Ví dụ

let s = new Stack(2);
s.push(10);
s.push(20);
s.display();
s.clear();
s.display();

Đầu ra

Điều này sẽ cung cấp đầu ra -

[10, 20]
[]