JS棧stack類的實現(xiàn)與使用方法示例
本文實例講述了JS棧stack類的實現(xiàn)與使用方法。分享給大家供大家參考,具體如下:
棧是一種“先進后出”的數(shù)據(jù)結(jié)構(gòu),原理如下圖所示:

示例代碼:
/*使用棧stack類的實現(xiàn)*/
function stack() {
this.dataStore = [];//保存棧內(nèi)元素,初始化為一個空數(shù)組
this.top = 0;//棧頂位置,初始化為0
this.push = push;//入棧
this.pop = pop;//出棧
this.peek = peek;//查看棧頂元素
this.clear = clear;//清空棧
this.length = length;//棧內(nèi)存放元素的個數(shù)
}
function push(element){
this.dataStore[this.top++] = element;
}
function pop(){
return this.dataStore[--this.top];
}
function peek(){
return this.dataStore[this.top-1];
}
function clear(){
this.top = 0;
}
function length(){
return this.top;
}
/*測試stack類的實現(xiàn)*/
var s = new stack();
s.push("aa");
s.push("bb");
s.push("cc");
console.log(s.length());//3
console.log(s.peek());//cc
var popped = s.pop();
console.log(popped);//cc
console.log(s.peek());//bb
這里使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼,可得如下運行結(jié)果:

希望本文所述對大家JavaScript程序設(shè)計有所幫助。
相關(guān)文章
JavaScript根據(jù)json生成html表格的示例代碼
這篇文章主要介紹了JavaScript根據(jù)json生成html表格的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-10-10
JavaScript iframe 實現(xiàn)多窗口通信實例詳解
這篇文章主要為大家介紹了JavaScript iframe 實現(xiàn)多窗口通信實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-10-10
Javascript實現(xiàn)滑塊滑動改變值的實現(xiàn)代碼
一個功能,值得一說的是本頁面的滑塊實現(xiàn)由于對美工不是很熟悉所以上圖了,感興趣的朋友可以了解下哈2013-04-04
JavaScript之class繼承_動力節(jié)點Java學院整理
這篇文章主要介紹了JavaScript之class繼承,新的關(guān)鍵字class從ES6開始正式被引入到JavaScript中。class的目的就是讓定義類更簡單,有興趣的可以了解一下2017-07-07
window.event.keyCode兼容IE和Firefox實現(xiàn)js代碼
window.event.keyCode兼容IE和Firefox具體實現(xiàn)代碼如下,感興趣的朋友可以參考下哈2013-05-05

