栈是一种遵从后进先出(LIFO)原则的有序集合。新添加的或待删除的元素都保存在栈的
末尾,称作栈顶,另一端就叫栈底。在栈里,新元素都靠近栈顶,旧元素都接近栈底。
–《学习javaScript数据结构与算法》
/*栈
* push 添加新元素到栈顶
* pop 移除栈顶元素,同时返回被移除的元素
* peek 返回栈顶元素
* isEmpty 是否为空栈
* clear 清空栈
* size 返回栈的长度
* */
class Stack {
constructor() {
this.items = []
}
push(item) {
this.items.push(item)
}
pop() {
return this.items.pop()
}
peek() {
return this.items[items.length - 1]
}
isEmpty() {
return this.items.length === 0
}
size() {
return this.items.length
}
clear() {
this.items.length = 0
}
print() {
console.log(this.items.toString());
}
}
let stack = new Stack()
stack.push(5);