数组的常⽤⽅法

下⾯前三种是对原数组产⽣影响的增添⽅法,第四种则不会对原数组产⽣影响

push()push() ⽅法接收任意数量的参数,并将它们添加到数组末尾,返回数组的最新⻓度

unshift()unshift()在数组开头添加任意多个值,然后返回新的数组⻓度

splice()传⼊三个参数,分别是开始位置、0(要删除的元素数量)、插⼊的元素,返回空数组

concat()创建⼀个当前数组的副本,然后再把它的参数添加到副本末尾,最后返回这个新构建的数组,

不会影响原始数组

下⾯三种删除都会影响原数组,最后⼀项不影响原数组:

pop()⽅法⽤于删除数组的最后⼀项,同时减少数组的 length 值,返回被删除的项

shift()⽅法⽤于删除数组的第⼀项,同时减少数组的 length 值,返回被删除的项

splice()传⼊两个参数,分别是开始位置,删除元素的数量,返回包含删除元素的数组

slice()

转换⽅法

join() ⽅法接收⼀个参数,即字符串分隔符,返回包含所有项的字符串

1
2
3
let colors = ["red", "green", "blue"];
alert(colors.join(",")); // red,green,blue
alert(colors.join("||")); // red||green||blue

迭代⽅法

常⽤来迭代数组的⽅法(都不改变原数组)有如下:

some()

对数组每⼀项都运⾏传⼊的测试函数,如果⾄少有1个元素返回 true ,则这个⽅法返回 true

every()

对数组每⼀项都运⾏传⼊的测试函数,如果所有元素都返回 true ,则这个⽅法返回 true

forEach()

对数组每⼀项都运⾏传⼊的函数,没有返回值

filter()

对数组每⼀项都运⾏传⼊的函数,函数返回 true 的项会组成数组之后返回

map()

对数组每⼀项都运⾏传⼊的函数,返回由每次函数调⽤的结果构成的数组

1
2
3
let numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];
let mapResult = numbers.map((item, index, array) => item * 2);
console.log(mapResult) // 2,4,6,8,10,8,6,4,2