JavaScript數組常用方法


Array.map()

解釋:此方法是將數組中的每個元素調用一個提供的函數,結果作為一個新的數組返回,並沒有改變原來的數組

1 let arr = [1, 2, 3, 4, 5]
2 let newArr = arr.map(x => x*2)
3 //arr= [1, 2, 3, 4, 5]   原數組保持不變
4 //newArr = [2, 4, 6, 8, 10] 返回新數組

 

Array.forEach()

解釋:此方法是將數組中的每個元素執行傳進提供的函數,沒有返回值,直接改變原數組

1 let arr = [1, 2, 3, 4, 5]
2    num.forEach(x => x*2)
3    // arr = [2, 4, 6, 8, 10]  原數組改變,注意和map區分

 

Array.filter()

解釋:此方法是將所有元素進行判斷,將滿足條件的元素作為一個新的數組返回

1 let arr = [1, 2, 3, 4, 5]
2     const isBigEnough => value => value >= 2
3     let newArr = arr.filter(isBigEnough )
4     //newNum = [2,3, 4, 5] 滿足條件的元素返回為一個新的數組

 

Array.every()

解釋:此方法是將所有元素進行判斷返回一個布爾值,如果所有元素都滿足判斷條件,則返回true,否則為false

1     let arr = [1, 2, 3, 4, 5]
2     const isLessThan4 => value => value < 4
3     const isLessThan6 => value => value < 6
4     arr.every(isLessThan4 ) //false
5     arr.every(isLessThan6 ) //true

 

Array.some()

解釋:此方法是將所有元素進行判斷返回一個布爾值,如果存在元素都滿足判斷條件,則返回true,若所有元素都不滿足判斷條件,則返回false

1     let arr= [1, 2, 3, 4, 5]
2     const isLessThan4 => value => value < 4
3     const isLessThan6 => value => value > 6
4     arr.some(isLessThan4 ) //true
5     arr.some(isLessThan6 ) //false

 

Array.reduce()

解釋:此方法是所有元素調用返回函數,返回值為最后結果,傳入的值必須是函數類型

1    let arr = [1, 2, 3, 4, 5]
2    const add = (a, b) => a + b
3    let sum = arr.reduce(add)
4    //sum = 15  相當於累加的效果

 

Array.push()

解釋:此方法是在數組的后面添加新加元素,此方法改變了數組的長度

1     let arr = [1,2,3,4,5]
2     arr.push(6)    //[1, 2, 3, 4, 5, 6]

 

Array.pop()

解釋:從數組中刪除最后一個元素,並返回該元素的值。此方法更改數組的長度。

1     let arr = [1, 2, 3, 4, 5]
2     arr.pop()
3     console.log(arr) //[1, 2, 3, 4]
4     console.log(arr.length) //4

 

Array.shift()

解釋:方法從數組中刪除第一個元素,並返回該元素的值。此方法更改數組的長度。

1     let arr = [1, 2, 3, 4, 5]
2     arr.shift()
3     console.log(arr) //[2, 3, 4, 5]
4     console.log(arr.length) //4

 

Array.unshift()

解釋:方法將一個或多個元素添加到數組的開頭,並返回該數組的新長度(該方法修改原有數組)。

1     const array1 = [1, 2, 3];
2     console.log(array1.unshift(4, 5));
3     // expected output: 5
4     console.log(array1);
5     // expected output: Array [4, 5, 1, 2, 3]

 

Array.isArray()

解釋:用於確定傳遞的值是否是一個 Array。

1     Array.isArray([1, 2, 3]);
2     // true
3     Array.isArray({foo: 123});
4     // false
5     Array.isArray("foobar");
6     // false
7     Array.isArray(undefined);
8     // false

 

 

Array.concat()

解釋:用於合並兩個或多個數組。此方法不會更改現有數組,而是返回一個新數組。

1 const array1 = ['a', 'b', 'c'];
2 const array2 = ['d', 'e', 'f'];
3 const array3 = array1.concat(array2);
4 
5 console.log(array3);
6 // expected output: Array ["a", "b", "c", "d", "e", "f"]

 

Array.toString()

解釋:此方法將數組轉化為字符串

1     const array1 = [1, 2, 'a', '1a'];
2 
3     console.log(array1.toString());
4     // expected output: "1,2,a,1a"

 

Array.join()

解釋:將一個數組(或一個類數組對象)的所有元素連接成一個字符串並返回這個字符串。如果數組只有一個項目,那么將返回該項目而不使用分隔符。

 1     const elements = ['Fire', 'Air', 'Water'];
 2 
 3     console.log(elements.join());
 4     // expected output: "Fire,Air,Water"
 5 
 6     console.log(elements.join(''));
 7     // expected output: "FireAirWater"
 8 
 9     console.log(elements.join('-'));
10     // expected output: "Fire-Air-Water"

 

Array.splice()

解釋:通過刪除或替換現有元素或者原地添加新的元素來修改數組,並以數組形式返回被修改的內容。此方法會改變原數組。(可以實現數組的“增”,”刪“,”改“)

 1     const months = ['Jan', 'March', 'April', 'June'];
 2     months.splice(1, 0, 'Feb');
 3     // inserts at index 1
 4     console.log(months);
 5     // expected output: Array ["Jan", "Feb", "March", "April", "June"]
 6 
 7     months.splice(4, 1, 'May');
 8     // replaces 1 element at index 4
 9     console.log(months);
10     // expected output: Array ["Jan", "Feb", "March", "April", "May"]

 


免責聲明!

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



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