關於javascript里面仿python切片操作數組的使用方法


其實在使用了好一段時間的 python之后,我覺得最讓我念念不忘的並不是python每次在寫函數或者循環的時候可以少用{}括號這樣的東西(ps:其實也是了。。感覺很清爽,而且又開始寫js的時候老是想用xxx in range(): ...跪。:( )

而是我覺得字符串操作的切片真實讓我感到前所未有的爽。

試想一下,我們平時操作最多的數組和字符串在切片的幫助下,不知道可以省去多少時間和麻煩。而且有了切片甚至不用去記很多可以被切片代替的api。

今天我在啃《學習javascript數據結構與算法》的時候,無意中發現js其實合理利用

Array.prototype.splice()

這家伙,也能輕松實現切片的效果,而不需要再去記那些繁瑣的api。

 

例如 我這里先申明一個下面用到的實驗數組 

var laplace = [0,1,2,3,4,5,6,7,8]

 

然后我要往刪除數組里面第一個元素 按照切片的寫法應該是

laplace = laplace[1:]

而javascript 可以使用unshift()方法來實現 也可以使用我這里說到的類似於切片操作的 splice()方法

laplace.splice(0,1);

返回被刪除的第一個元素。

splice()方法 第一個參數代表操作數組的起始位置,第二個參數代表刪除元素的個數,第三個參數往后,是要添加到數組里的值。

 

那么如果要刪除該數組里面的最后一個參數可以使用

laplace.splice(laplace.lenth-1,1);

 

也不用去記shift() and unshift()類似的api了。感覺是不是有點方便?

然而這里要特別注意一下。。python切片的抽象等級遠遠高於 這里的僅僅能對數組使用的splice方法。 所以 使用的時候 還請注意。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM