摘要:前言還記得當(dāng)初用語言寫各種數(shù)據(jù)結(jié)構(gòu)的苦逼時代嘛,但是用來實現(xiàn)棧和隊列是如此的簡單啊,但是你們真的了解用模擬棧和隊列,就當(dāng)你們真的很了解了,畢竟是基礎(chǔ)知識,我就寫幾個案例,不喜勿噴棧棧方法棧就是先進(jìn)后出,就是如此便捷就可以簡單實現(xiàn)棧隊列隊列是
前言:
還記得當(dāng)初用C語言寫各種數(shù)據(jù)結(jié)構(gòu)的苦逼時代嘛,但是用JS來實現(xiàn)棧和隊列是如此的簡單啊,但是你們真的了解用js模擬棧和隊列,就當(dāng)你們真的很了解了,畢竟是基礎(chǔ)知識,我就寫幾個案例,不喜勿噴
棧demo1(棧方法):
棧就是先進(jìn)后出(LIFO),JS就是如此便捷push/pop就可以簡單實現(xiàn)棧
var demoArr = new Array(); demoArr.push("111") demoArr.push("222") demoArr.push("333") console.log(demoArr.pop()) // 333隊列
隊列是先進(jìn)先出(FIFO),高3有兩種方法實現(xiàn),shift和push模擬/unshift和pop模擬
demo2(隊列方法1)
var demoArr = new Array(); demoArr.push("july"); demoArr.push("deny"); demoArr.push("mirok"); //demoArr = ["july", "deny", "mirok"],按先進(jìn)先出,出來的則是july console.log(demoArr.shift()) // july
demo2(隊列方法2)
var demoArr = new Array(); demoArr.unshift("july") demoArr.unshift("deny") demoArr.unshift("mirok") console.log(demoArr.pop()) //july
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/96409.html
摘要:我們知道創(chuàng)建了一個函數(shù)就帶了一個屬性,創(chuàng)建一個實例就帶著一個指針,這個指針是實例和構(gòu)造函數(shù)的原型對象間的聯(lián)系,這個指針在腳本中是不可見的,也就是你不能訪問的,但是在和中,提供了來支持訪問,這么一說,相信大家應(yīng)該能明白吧 前言 一般我們看到prototype就會下意識的說這不就是原型對象嘛?但是你們真的了解prototype嘛?就當(dāng)你們很了解了,畢竟是基礎(chǔ)知識,我就簡單說說 正文 先說說...
摘要:這又是什么呢這個相對之前的比較復(fù)雜,但是高效的一點(diǎn)是只調(diào)用一次被繼承者構(gòu)造函數(shù)原理就是通過寄生方式創(chuàng)建一個被繼承者的副本,副本和被繼承者共用一個這樣就解決了之前的問題返回的一個副本設(shè)置指向因為新副本的原型對象被重寫副本作為的原型對象 前言 我們學(xué)JAVA的時候說到繼承就是一個extends ClassName的事情,但是在JS的世界里繼承和我們在JAVA所認(rèn)識的繼承實現(xiàn)方法又有一些不同...
摘要:移除數(shù)組第一項并返回該項同時將數(shù)組的長度減一。簡單實現(xiàn)棧使用和結(jié)合實現(xiàn)簡單棧簡單實現(xiàn)隊列使用與結(jié)合實現(xiàn)簡單隊列額外補(bǔ)充與用途相反,在數(shù)組前端添加任意個項,并返回新數(shù)組的長度。 棧和隊列 棧:LIFO(先進(jìn)后出)一種數(shù)據(jù)結(jié)構(gòu)隊列:LILO(先進(jìn)先出)一種數(shù)據(jù)結(jié)構(gòu) 使用的js方法 1.push();可以接收任意數(shù)量的參數(shù),把它們逐個推進(jìn)隊尾(數(shù)組末尾),并返回修改后的數(shù)組長度。2.po...
摘要:前言函數(shù)傳參我們天天都在用,但是你們真的了解嘛就當(dāng)你們很了解了,畢竟是一些基礎(chǔ)的東西,我就寫幾個例子,不喜勿噴。 前言 函數(shù)傳參我們天天都在用,但是你們真的了解嘛?就當(dāng)你們很了解了,畢竟是一些基礎(chǔ)的東西,我就寫幾個例子,不喜勿噴。 例子 demo1: var obj = {name: mirok} function demo1(obj) { obj.name = july }...
摘要:當(dāng)你使用的活動監(jiān)視器你會發(fā)現(xiàn),實際的進(jìn)程數(shù)為菜鳥是因為線程池的原因嗎老鳥不錯嘛,還知道線程池呢但非也非也。菜鳥竟然不是線程池老鳥你忽視了集成了引擎。啟動后會創(chuàng)建實例,而實例是多線程的。 老鳥:伸著懶腰,看著窗外明媚的陽光,喝一口清茶,心情大美。一天的好心情莫過于此。老鳥:菜鳥,你這消失了大半個月,忙什么呢?菜鳥:聽說node最近很火,這不趁著年輕,多儲存點(diǎn)知識儲備呢!老鳥:那你說說你對...
閱讀 728·2021-08-17 10:11
閱讀 1594·2019-08-30 11:15
閱讀 1017·2019-08-26 13:54
閱讀 3502·2019-08-26 11:47
閱讀 1212·2019-08-26 10:20
閱讀 2816·2019-08-23 18:35
閱讀 1213·2019-08-23 17:52
閱讀 1297·2019-08-23 16:19