您好,登錄后才能下訂單哦!
怎么在JavaScript中實現一個stack類?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
棧是一種“先進后出”的數據結構,原理如下圖所示:
示例代碼:
/*使用棧stack類的實現*/ function stack() { this.dataStore = [];//保存棧內元素,初始化為一個空數組 this.top = 0;//棧頂位置,初始化為0 this.push = push;//入棧 this.pop = pop;//出棧 this.peek = peek;//查看棧頂元素 this.clear = clear;//清空棧 this.length = length;//棧內存放元素的個數 } 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類的實現*/ 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測試上述代碼,可得如下運行結果:
看完上述內容,你們掌握怎么在JavaScript中實現一個stack類的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。