JavaScript數(shù)組方法-系統(tǒng)性總結(jié)詳解
首先總結(jié)的意義就是讓雜亂無章變得更加井然有序,這樣在使用的過程思路會更加清晰。
數(shù)組使用方法注意點:
- 變異方法和非變異方法。即變異方法使用會改變原數(shù)組,后者則不會。下面腦圖將其進行了標注。
- 你或許需要注意數(shù)組方法和字符串方法有幾個方法相似,數(shù)組和字符串是如何切換的?
- 有些方法參數(shù)是支持負數(shù)的,有些方法第二個參數(shù)不是代表坐標代表的是個數(shù)。
- 甚至回調(diào)函數(shù)我們也可以將其梳理一遍,大部分回調(diào)函數(shù)參數(shù)格式是一樣的,有些回調(diào)函數(shù)是不一樣的。
- 當split,slice,splice,join,contains,includes,push,pop,shift,unshift甚至你被相似的單詞搞得暈頭轉(zhuǎn)向,以至于你分不清哪個是數(shù)組的方法哪個是字符串方法,哪個功能是干嘛來著。當然我現(xiàn)在可以告訴你上面那些方法究竟是數(shù)組方法還是字符串方法,甚至字符串方法和數(shù)組都有這么一個方法,但是沒必要,因為你終究很難記住。所以下面將其進行系統(tǒng)的歸類總結(jié),你就很容易區(qū)分出來了。
接下來你只需要忘記你之前雜亂無章的記憶,通過梳理重新建立你的記憶。
數(shù)組常用方法
數(shù)組元素增添和刪除
操作數(shù)組頭部
- unshift(value)
變異方法
數(shù)組頭部插入一個元素 - shift()
變異方法
移出數(shù)組頭部的第一個元素
操作數(shù)組尾部
- push(value) 變異方法 向數(shù)組尾部壓入一個元素
- pop() 變異方法 彈出數(shù)組尾部一個元素
任意位置增刪
splice(start,length[…,value]) 變異方法
第二個參數(shù)為個數(shù),不為0的時候表示需要從start開始刪除length個元素支持增刪一起做。
數(shù)組拼接
- concat(…arr) 字符串有該類似方法
數(shù)組轉(zhuǎn)換成字符串
- join(str) 以指定字符進行拼接將數(shù)組轉(zhuǎn)換成字符串
- toString() 以","號進行分割將數(shù)組轉(zhuǎn)換字符串
截取數(shù)組
- slice(start[,end])
支持負數(shù) 字符串有該類似方法
數(shù)組排序方法
排序
- sort(callback)
變異方法
對數(shù)組進行排序
回調(diào)函數(shù)返回 a-b為從大到小進行排序,b-a則為從小到大進行排序。
//callback回調(diào)函數(shù)格式 function callback(a,b) { return a-b }
順序翻轉(zhuǎn)
reverse()變異方法
對數(shù)組的順序進行反轉(zhuǎn)
數(shù)組迭代方法
數(shù)組遍歷查找
返回值為下標
- indexOf(targetValue) 從左到右數(shù)組進行遍歷,查找目標值的所在下標,返回第一次出現(xiàn)的下標值.
- lastIndexOf(targetValue) 從右到左對數(shù)組進行遍歷,查找目標值所在下標,返回第一次出現(xiàn)的下標值.
- findIndex(callback) 通過回調(diào)函數(shù)對數(shù)組元素進行條件判斷,返回第一次滿足條件的元素下標值
返回值為內(nèi)容
- find(callback) 通過回調(diào)函數(shù)對數(shù)組元素進行條件判斷,返回第一次滿足條件的元素值
數(shù)組遍歷處理
callback(value[,index[,array]])
//callback回調(diào)函數(shù)格式 function callback( value, index, array) { //處理 ... return ... //此處是否不需要retrun語句下面對其進行標注 }
- forEach(callback) 對數(shù)組進行遍歷處理僅處理無返回值。callback不需要return語句
- map(callback) 遍歷數(shù)組每一個元素使用callback對數(shù)組進行處理,并且將callback處理過的返回值加入到新數(shù)組并返回新數(shù)組。
- filter(callback) 對數(shù)組進行過濾操作,返回callback返回值為true的元素組成的新數(shù)組。
- every(callback) 對數(shù)組進行遍歷,如果callback返回值都為true,則方法的返回值為true
- some(callback) 對數(shù)組進行遍歷,如果callback返回值有一個為true,則方法的返回值為true
callback(total,value[,index[,array]])
//callback回調(diào)函數(shù)格式 function callback(total, value, index, array) { return total + value; }
- reduce(callback[,初始值])
從左往右數(shù)組依次縮短,同時上一次處理的結(jié)果total傳入下次回調(diào)函數(shù)的作為參數(shù)供回調(diào)函數(shù)使用
- reduceRight(callback[,初始值])
從右往左數(shù)組依次縮短,同時上一次處理的結(jié)果total傳入下次回調(diào)函數(shù)的作為參數(shù)供回調(diào)函數(shù)使用
數(shù)組其他方法
includes(value) ES6 判斷數(shù)組是否包含某個元素
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
layui實現(xiàn)左側(cè)菜單點擊右側(cè)內(nèi)容區(qū)顯示
這篇文章主要為大家詳細介紹了layui實現(xiàn)左側(cè)菜單點擊右側(cè)內(nèi)容區(qū)顯示,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-07-07微信小程序引入map組件并在地圖上標點的實現(xiàn)代碼
這篇文章主要介紹了微信小程序引入map組件并在地圖上標點,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-10-10element?UI中在?el-select?與?el-tree?結(jié)合組件實現(xiàn)過程
項目上實現(xiàn)某個功能,使用到了?el-select?和?el-tree?組合實現(xiàn),記錄下兩者結(jié)合的實現(xiàn)過程,對?el-select?與?el-tree?結(jié)合組件實現(xiàn)過程感興趣的朋友跟隨小編一起看看吧2023-02-02js屏蔽F12審查元素,禁止修改頁面代碼等實現(xiàn)代碼
有時候我們需要屏蔽客戶端的F12,以防菜鳥也可以隨意修改我們的代碼,也處于源碼的保護等操作,這里就為大家分享一下常見的代碼2020-10-10