摘要:方法和方法方法可移除數(shù)組中的第一個項,并返回該項方法看起來向反,它能在數(shù)組前端添加任意個項,并返回數(shù)組新的長度。
Array類型的調(diào)整數(shù)組數(shù)量的幾個方法
常見的有如下幾個:
push()方法
pop()方法
shift()方法
unshift()方法
push()方法和pop()方法:
push()方法可接受不了任意數(shù)量的參數(shù),把它們逐個添加到數(shù)組末尾,并返回修改后的參數(shù);pop()方法會從數(shù)組的末尾刪除掉最后一項,并返回被移除的值。
var colors=new Array(); var count=colors.push("red","green"); alert(count); //2 count=colors.push("black"); alert(count); //3 var item=colors.pop(); alert(item); alert(colors.length);
上面一段代碼會添加數(shù)組的最后一項,并移除最后一項,這段代碼可以看成一個棧,值得注意的是,如果用其他的方法,使得數(shù)組中間有"空位"的話,中間的空位會被設(shè)置成undefined數(shù)據(jù)類型。如下:
var colors=["red","blue"]; colors[3]="black"; colors.push("brown"); alert(colors[2]);
代碼第二行:當(dāng)數(shù)組的第四位被設(shè)置成"black"的時候,第三位并沒有值,而使用push()方法則會直接添加到最后一位(即第五位),而第三位則會是undefined。
shift()方法和unshift()方法:
shift()方法可移除數(shù)組中的第一個項,并返回該項;unshift()方法看起來向反,它能在數(shù)組前端添加任意個項,并返回數(shù)組新的長度。
var colors=new Array(); var count=colors.unshift("red","green"); alert(count); //2 count=colors.unshift("black"); alert(count); //3 var item=colors.pop(); alert(item); //green alert(colors.length); //2
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/91852.html
摘要:對于棧來說,這個表尾稱為棧的棧頂,相應(yīng)的表頭稱為棧底。棧和隊列的區(qū)別棧的插入和刪除操作都是在一端進(jìn)行的,而隊列的操作卻是在兩端進(jìn)行的。出棧操作出棧操作就是在棧頂取出數(shù)據(jù),棧頂指針隨之下移的操作。 基本概念 棧和隊列都是動態(tài)的集合,在棧中,可以去掉的元素是最近插入的哪一個。棧實現(xiàn)了后進(jìn)先出。在隊列中,可以去掉的元素總是在集合中存在的時間最長的那一個。隊列實現(xiàn)了先進(jìn)先出的策略。 棧的官...
摘要:于是翻出了機(jī)房里的這本學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)與算法開始學(xué)習(xí)程序員的基礎(chǔ)知識。這本書用了我最熟悉的來實現(xiàn)各種數(shù)據(jù)結(jié)構(gòu)和算法,而且書很薄,可以說是一本不錯的入門教程。隊列在頭部刪除元素,尾部添加元素。 本系列所有文章:第一篇文章:學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)與算法之棧與隊列第二篇文章:學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)與算法之鏈表第三篇文章:學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)與算法之集合第四篇文章:學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)與算法之字典和散列表第五篇文章:學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)與算...
摘要:我對棧的學(xué)習(xí)因為是個新手,所以都是最簡單的知識學(xué)習(xí)梳理。棧是一種遵從后進(jìn)先出原則的有序集合,新添加的或者待刪除的元素都保留在棧的末尾,稱作棧頂,另一端叫做棧底。棧的學(xué)習(xí)棧的創(chuàng)建創(chuàng)建一個類來表示棧。對于棧來說只能用和方法來進(jìn)行添加和刪除元素。 我對棧的學(xué)習(xí) 因為是個新手,所以都是最簡單的知識學(xué)習(xí)梳理。 什么是棧 數(shù)組是計算機(jī)科學(xué)中最常用的數(shù)據(jù)結(jié)構(gòu),是數(shù)據(jù)元素的集合。有時候我們需要一種添加...
摘要:內(nèi)容棧隊列鏈表集合字典散列表樹棧通過類封裝實現(xiàn)棧結(jié)構(gòu),不直接繼承數(shù)組的原生方法的原因是,數(shù)組具有某些其他數(shù)據(jù)結(jié)構(gòu)的方法,為了只讓棧暴露棧的方法,還得編寫將非棧的方法封閉的代碼,多了冗余代碼,且不是面向?qū)ο缶幊痰暮侠肀憩F(xiàn)。 內(nèi)容:棧、隊列、鏈表、集合、字典、散列表、樹 棧 通過類封裝實現(xiàn)棧結(jié)構(gòu),不直接繼承數(shù)組的原生方法的原因是,數(shù)組具有某些其他數(shù)據(jù)結(jié)構(gòu)的方法,為了只讓棧暴露棧的方法,還得...
摘要:內(nèi)存空間又被分為兩種,棧內(nèi)存與堆內(nèi)存。今天就堆棧隊列的內(nèi)容就大概說到這里下一篇博客在繼續(xù)說一下,有什么說的不對或者不足的地方,請大家批評指正 棧的定義 棧是計算機(jī)科學(xué)中的一種抽象數(shù)據(jù)類型,只允許在有序的線性數(shù)據(jù)集合的一端(稱為堆棧頂端,英語:top)進(jìn)行加入數(shù)據(jù)(英語:push)和移除數(shù)據(jù)(英語:pop)的運算。因而按照后進(jìn)先出(LIFO, Last In First Out)的原理運...
閱讀 3439·2021-11-22 09:34
閱讀 1908·2019-08-30 12:53
閱讀 3502·2019-08-28 18:07
閱讀 2988·2019-08-27 10:55
閱讀 2967·2019-08-26 10:12
閱讀 3596·2019-08-23 18:21
閱讀 1349·2019-08-23 14:10
閱讀 1483·2019-08-23 13:04