Javascript數組常用方法你都知道嗎
我用這些方法主要從五個方面去學習。
1.方法是幹什麼的。
2.誰能用 (當然是數組啦)。
3.有沒有返回值,返回值是什麼。
4.修不修改原來的對象。
5.如何使用。
接下來就是幹貨瞭。
1.push 向數組內添加一個或多個元素,添加到數組的最後面,方法返回值是新數組的長度。
arr.push(200) arr.push(200,2,32)
2.pop 刪除數組末尾的一個元素,不需要傳參,方法返回值是被刪除的元素 。
arr.pop()
3.unshift 向數組中添加一個或多個元素,添加到最前面,返回值是新數組的長度。
arr.unshift(1)arr.unshift(1,2)arr.unshift(1) arr.unshift(1,2)
4.shift 刪除數組最前面的一個元素 返回值是被刪除的元素。
arr.shift()
5. concat 拼接兩個數組,返回拼接後的數組,原數組不變。
let arr1 = [1,2] let arr2 = [2,3] arr1.concat(arr2) console.log(arr1); // [1,2] console.log(arr1.concat(arr2)); // [1,2,2,3]
6. reverse 數組顛倒,返回顛倒後的數組,原數組改變。
arr.reverse()
7.slice 數組的截取,包括開頭,不包括結尾,返回截取後的數組,原數組不變。
let arr = [1,2,3,4,5,6] // 填兩個參數 a,b 從a截取到b 不包括b // 填一個參數 a 從a截取到末尾 // 不填參數 從0截取到最後 //截取arr 裡面的 3-5 也就是數組下標2-4 但是第二個參數不包括 所以就是 2-5 arr.slice(2,5)
8.splice 數組的添加或者刪除,返回被刪除的元素組成的數組,原數組改變。
//用法 splice(a,b,c) //a 表示添加或者刪除的開始的下標 //b 表示刪除的個數 不想刪除隻想添加 b寫成0 //c 表示添加的元素 添加的元素可以是多個 c,d,e 不添加就不用寫c var arr = [1,2,3,4,5,6] // 把4刪除 換成10 arr.splice(3,1,10)
9.join 將數組內的所有元素以某個值進行字符串拼接,默認是以 , 拼接。返回值是拼接的字符串,原數組不變。
let arr = [1,2,3,4,5,6] arr.join() arr.join('-')
10.indexOf 檢測數組中是否存在某個元素 ,存在的話返回第一次找到的下標,不存在返回 -1,原數組不變。
let arr = [1,2,3,4,5,6] let ind = arr.indexOf(5)
11.lastIndexOf 和 indexOf用法一樣,從數組後面開始找。
12.includes 檢測數組中是否存在某個元素 存在返回 true 不出在返回false 用法和indexOf一樣。
13.sort 對數組進行排序,返回排序後的數組,原數組改變。
// 漢字看筆畫 英文字母看因為字母順序 // 默認排序是按照首字符的順序開始排序的 let arr = [2,3,5,4,9,6] arr.sort() //sort可以寫函數 // a,b 代表的就是數組中相鄰的兩個數 // 從小到大排 arr.sort(function(a,b){ return a - b })
14.every 檢測數組內的所有元素是否滿足某個條件, 有一個必須參數,返回值是佈爾值。
let arr = [100,15,50,110] let myarr = arr.every(function(el){ return el>14 }) console.log(myarr) //true
15.some 檢測數組內是否有元素滿足某個條件,有一個必須參數,返回值是佈爾值。
var arr = [100,15,50,110] var myarr1 = arr.some(function(el){ return el>100 }) console.log(myarr1) //true
16.find 返回數組中匹配的 第一個元素 的值,沒有返回 undefined,有一個必須參數。
var arr = [100,15,50,110] var myarr2 = arr.find(function(el){ return el > 10 }) console.log(myarr2) // 100
17.findIndex 方法同find 返回值是對應的索引值。
18.filter 返回符合條件的元素形成一個新數組 ,返回值是一個數組
var arr = [100,15,8,50,110] var myarr3 = arr.filter(function(el){ return el<18 }) console.log(myarr3) //[15,8]
19.map 創建一個數組,該數組中每個元素是調用過函數之後返回的值。
var arr = [100,15,8,50,110] var arr5 = arr.map(function(el){ return el*1+5 }) console.log(arr5); //[105, 20, 13, 55, 115]
20.reduce 用這個方法可以實現以上的所有方法 比如數組內數累加,返回值是單個數
// reduce(函數,最終結果的初始值) // 每次遍歷的函數,有四個參,每次查詢數組的元素時執行的函數 // function(res,ele,index,array) // res 結果變量 // ele 數組內元素 // index 對應的索引 // array 原數組 // 必須設置返回值,上一次返回的值是res的值,最後返回值是最終結果,也是reduce函數的返回值。 let arr = [100,15,8,50,110] // res 是自己創的累加器 ele是當前值 let total = arr.reduce(function(res,ele){ return res + ele },0)
總結
本篇文章就到這裡瞭,希望能夠給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!
推薦閱讀:
- 27個JavaScript數組常見方法匯總與實例說明
- javascript的數組方法大全
- javascript數組裡的27個方法總合詳解
- 梳理總結25JavaScript數組操作方法實例
- JS數組中常用方法技巧學會進階成為大佬