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"]