Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

Peek Stack ใน JavaScript: ดูค่าบนสุดโดยไม่ลบ


พิจารณาคลาส Stack เรียบง่ายใน JavaScript

ตัวอย่าง

class Stack { 
  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 >= maxSize; 
  } 
  push(element) { 
    if (this.isFull()) { 
      console.log("Stack Overflow!"); 
      return; 
    } 
    this.container.push(element); 
  } 
  pop() { 
    if (this.isEmpty()) { 
      console.log("Stack Underflow!"); 
      return; 
    } 
    this.container.pop(); 
  } 
}

isFull ตรวจสอบความยาวเท่าหรือเกิน maxSize, isEmpty ตรวจสอบความยาวเป็น 0 Push/Pop ใช้เพิ่ม/ลบสมาชิก

เพิ่มการทำงาน PEEK: ดูค่าบนสุดของอาร์เรย์

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

ทดสอบ:

ตัวอย่าง

let s = new Stack(2); 
s.peek(); 
s.push(10); 
console.log(s.peek());

ผลลัพธ์

จะได้ผลลัพธ์:

Stack Underflow! 10