數(shù)組的方法挺多,之前面試也遇到詢問數(shù)組方法的粗悯,現(xiàn)在小小的總結(jié)一下虚循。
1、添加元素
push样傍,添加到數(shù)組末尾
unshift横缔, 添加到數(shù)組開頭
2、刪除元素
pop衫哥,刪除數(shù)組末尾元素
shift茎刚,刪除數(shù)組開頭元素
3、在任意位置添加或者刪除元素
splice 方法中的參數(shù)代表索引 刪除個(gè)數(shù) 之后的參數(shù)代表要添加到數(shù)組中的元素
4炕檩、其他javascript數(shù)組方法
concat 連接一個(gè)或者多個(gè)數(shù)組
every 校驗(yàn)每一個(gè)元素是否符合設(shè)置的邏輯斗蒋,是返回true,否返回false
filter 過濾數(shù)組中符合設(shè)置邏輯的元素
forEach 迭代數(shù)組中的每一個(gè)元素笛质,無(wú)返回值
join 把數(shù)組按照設(shè)置的連接符號(hào)轉(zhuǎn)換成字符串
indexOf 返回第一個(gè)符合設(shè)置邏輯的元素索引泉沾,沒有找到為-1
lastIndexOf 返回最后一個(gè)符合設(shè)置邏輯的元素索引
map 對(duì)數(shù)組每個(gè)元素運(yùn)行設(shè)置邏輯,會(huì)返回邏輯實(shí)現(xiàn)后的數(shù)組
reverse 數(shù)組倒序
slice 返回?cái)?shù)組指定兩個(gè)索引之間的元素妇押,不包括最后一個(gè)索引對(duì)應(yīng)的元素
some 校驗(yàn)數(shù)組中是否存在符合設(shè)置邏輯的元素跷究,有一個(gè)符合邏輯返回true,否則返回false
sort 按照設(shè)置的邏輯進(jìn)行數(shù)組排序敲霍,沒有寫邏輯就是字母順序排列
toString 數(shù)組變成字符串輸出
valueOf 數(shù)組作為字符串返回
5俊马、數(shù)組的迭代方法
every、some肩杈、map柴我、filter、forEach扩然、reduce
其中reduce可以包括四個(gè)參數(shù)艘儒,previousValue,currentValue, index, array
前兩個(gè)必填,表示原先值界睁,現(xiàn)在值觉增,后兩個(gè)用不到可以不填,表示索引和原來(lái)數(shù)組翻斟。
6逾礁、ES6中數(shù)組的新功能方法
@@iterator 返回一個(gè)包括數(shù)組鍵值對(duì)的迭代器對(duì)象,通過Symbol.iterator來(lái)訪問
copyWithin 復(fù)制數(shù)組中對(duì)應(yīng)索引位置的元素
entries 返回包括數(shù)組所有鍵值對(duì)的@@iterator
includes 數(shù)組是否存在某個(gè)元素访惜,存在返回true嘹履,不存在返回false
find 返回符合設(shè)置邏輯的數(shù)組元素,如果沒有疾牲,返回undefined
findIndex 返回?cái)?shù)組元素符合設(shè)置邏輯的元素的索引,如果沒有植捎,返回-1
fill 用固定的值填充數(shù)組,可以指定開始填充和結(jié)束填充的索引
from 根據(jù)已有數(shù)組創(chuàng)建一個(gè)新的數(shù)組
keys 返回?cái)?shù)組的鍵
of 根據(jù)傳入?yún)?shù)創(chuàng)建一個(gè)新數(shù)組
values 返回?cái)?shù)組的值