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

 

posted @ 2021-10-28 09:33  1/2代码  阅读(203)  评论(0编辑  收藏  举报