您好,登錄后才能下訂單哦!
這篇文章主要講解了“JavaScript常用的數(shù)組方法有哪些”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“JavaScript常用的數(shù)組方法有哪些”吧!
forEach()方法傳入的參數(shù)是一個(gè)函數(shù),內(nèi)部傳入的函數(shù)的形參第一個(gè)是item數(shù)組每一項(xiàng)的值,第二個(gè)是索引號(hào)index,它的返回值是undefined;
運(yùn)行實(shí)例如下:
控制臺(tái)輸出結(jié)果
filter()方法是篩選數(shù)組的方法,傳入的參數(shù)和forEach方法一樣,但是返回值為一個(gè)數(shù)組,實(shí)際應(yīng)用是用來將獲取到的數(shù)據(jù)中符合條件的數(shù)組篩選出來;
運(yùn)行的實(shí)例如下:
控制臺(tái)輸出結(jié)果如下:
map()方法傳入的參數(shù)也同上,它的返回值也是一個(gè)新的數(shù)組;map()方法可以對(duì)數(shù)組的每一項(xiàng)進(jìn)行相同的處理,運(yùn)行的實(shí)例如下:
控制臺(tái)的輸出結(jié)果:
findIndex()方法顧名思義,是返回?cái)?shù)組中的符合條件的第一項(xiàng)的索引號(hào),如果找不到返回-1。傳入的參數(shù)同上,運(yùn)行實(shí)例如下所示:
let arr = [1, 3, 3, 4, 5, 6, 7] //findIndex方法,返回第一個(gè)符合條件哪一項(xiàng)的索引號(hào),找不到返回-1 const res = arr.findIndex((item) => item > 5) console.log(res)
控制臺(tái)輸出結(jié)果:
find()方法是返回查找到的第一個(gè)符合條件的那一項(xiàng),傳入的參數(shù)同上。運(yùn)行實(shí)例如下所示:
let arr = [1, 3, 3, 4, 5, 6, 7] //find()查找item,返回第一個(gè)符合條件的那一項(xiàng),找不帶返回undefined const res2 = arr.find((item) => { return item > 5 }) console.log(res2)
控制臺(tái)運(yùn)行結(jié)果如下:
some()方法傳入的參數(shù)同上,返回值是布爾值,只要查找到一項(xiàng)符合條件就返回true;示例如下:
let arr = [1, 3, 3, 4, 5, 6, 7] //some方法返回布爾值 const bl = arr.some((item) => { return item > 5 }) console.log(bl)
every()方法傳入的參數(shù)也是同上,返回值是布爾值,但是必須每一項(xiàng)都符合條件才返回true;示例如下:
let arr = [1, 3, 3, 4, 5, 6, 7] //every()返回值為布爾值需要全部通過篩選條件才返回true const bl2 = arr.every((currentValue) => { return currentValue < 10 }) console.log(bl2)
reduce()函數(shù)中的參數(shù)第一個(gè)參數(shù)是函數(shù),第二個(gè)參數(shù)是暫存變量sum的類型,第一個(gè)參數(shù)函數(shù)有四個(gè)參數(shù),不過常用的就是第一個(gè)參數(shù)為累加暫存變量(return就是這個(gè)值),第二個(gè)參數(shù)item。第三個(gè)是index,第四個(gè)是數(shù)組本身;代碼示例如下:
let arr = [1, 3, 3, 4, 5, 6, 7] //reduce()歸納函數(shù) const previousValue = 0 const arrSum = arr.reduce((previousValue, currentValue) => { return previousValue + currentValue }, 0) console.log(arrSum)
控制臺(tái)輸出結(jié)果如下:
concat()將兩個(gè)數(shù)組進(jìn)行拼接,返回的是拼接完的新數(shù)組,不能給多維數(shù)組(數(shù)組套數(shù)組)進(jìn)行拼接;
代碼示例如下:
let arr = [1, 3, 3, 4, 5, 6, 7] //concat 將兩個(gè)數(shù)組進(jìn)行拼接 , 返回的是一個(gè)新的數(shù)組 const newArr3 = [2, 5, 5, 6, 6, 8] const concatArr = arr.concat(newArr3) console.log(concatArr)
push()/unshift()方法是分別在數(shù)組的最后面和最前面添加一個(gè)元素,返回值是新數(shù)組的長(zhǎng)度;
//一下數(shù)組處理方法會(huì)改變?cè)瓟?shù)組 const Arr = [1, 3, 5, 6, 7, 8, 9] Arr.push(1) console.log(Arr) console.log(Arr) const a = Arr.unshift(1) console.log(a)
控制臺(tái)輸出結(jié)果如下:
此兩種方法pop()是刪除數(shù)組的最后一個(gè)值,shift()是刪除數(shù)組的第一項(xiàng)的值;返回值是刪除的那一項(xiàng);
arr.pop(1) console.log(arr) arr.shift(1) console.log(arr)
控制臺(tái)輸出結(jié)果如下:
sort()方法是排序,內(nèi)部的參數(shù)是一個(gè)函數(shù),function(a , b){ return a - b },通過此函數(shù)可以控制排序是降序函數(shù)升序,如果參數(shù)內(nèi)部return a - b是降序,return a + b是升序;
reverse()是數(shù)組翻轉(zhuǎn),即將數(shù)組的元素倒序排列;代碼示例如下:
let arr = [1, 3, 3, 4, 5, 6, 7]arr.sort((a, b) => { return a - b})console.log(arr)arr.reverse()console.log(arr)
splice()方法修改原數(shù)組,返回一個(gè)刪除元素的新數(shù)組,負(fù)數(shù)就是從后往前數(shù)索引;傳入的第一個(gè)參數(shù)是刪除的起始元素的索引號(hào),第二個(gè)參數(shù)是刪除的元素的個(gè)數(shù);
let arr = [1, 3, 3, 4, 5, 6, 7]arr.splice(1, 3)console.log(arr)
flat()用于多維數(shù)組拍平,傳入的參數(shù)是數(shù)組拍平的深度,也可以是infiniy,代表數(shù)組拍平的深度是無窮大
代碼示例如下:
const Arr2 = [ [1, 2], [2, 3], [4, 5], [5, 6],]console.log(Arr2.flat(Infinity))
控制臺(tái)輸出結(jié)果:
可以對(duì)數(shù)組進(jìn)行填充:寫法:Array.fill(1 , 2 , 4)數(shù)組中填充1 , 從索引值是2的元素開始, 到元素的索引號(hào)是4開始,不包括索引值是4的元素;填充的元素會(huì)覆蓋原來對(duì)應(yīng)索引號(hào)的元素;
代碼示例如下:
const Arr2 = [ [1, 2], [2, 3], [4, 5], [5, 6],]console.log(Arr2.fill(1, 0, 4))
控制臺(tái)輸出結(jié)果:
感謝各位的閱讀,以上就是“JavaScript常用的數(shù)組方法有哪些”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)JavaScript常用的數(shù)組方法有哪些這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。