js数组的方法
-
some()-
判断数组中是否有一个符合条件的,有一个满足就返回
true,否则返回false;var a = arr.some(function(item){return item>20}); console.log(a);
-
every()
判断数组中是否有全部符合条件的,全部符合返回ture,|有一个不符合则返回false;var a = arr.every(function(item){return item>20}); console.log(a);
-
filter()
过滤效果,把原数组中符合条件的元素放在新数组里。需要定义一个变量来接受这个新数组。
```
var a = arr.filter(function(item){return item>20});
console.log(a);
```
- forEach()
功能和for循环的遍历效果一样,不需要再次定义一个变量来接受,没有返回值。
item相当于for循环中的arr[i]
index相当于for循环中的i
arr就是当前的数组。arr.forEach(function(item,index,arr){console.log(item);});
- map()和forEach()相似
都是数组的遍历,唯一区别就是:map()有返回值。不过其返回的是一个数组。var a = arr.map(function(item){item+=5;return item}); console.log(a); ```
- indexOf(需要查找的元素,从下标n开始);
.如果找不到则会返回-1var a=arr.indexOf(20,1); console.log(a);
- join(" ")
将数组中每个元素用传入的字符串连接var a = arr.join(" "); console.log(a);
- reverse()
反转数组,将数组中的元素按照反向排列arr.reverse(); console.log(arr);
- sort()
对数组中的元素进行顺序排列(默认为按照编码顺序无返回值),若按照数字大小则可有返回值用一下:var a = arr.sort(function(v1,v2){return v1-v2}); console.log(a);```
- slice(start,end)
获取当前数组的指定区域,有返回值但是不影响原本数组的长度和内容,含头不含尾。
start为开始位置的下标
end为结束位置的下标var a = arr.slice(2,5); console.log(a);```
- splice(start,length,[所要更换的元素(可写多个)])
可对元素进行增删改。有返回值并且截取后的数组会对原数组造成影响----重点
```
var a = arr.splice(2,0,90,60,22,33);
console.log(a);
console.log(arr);```
增arr.splice(2,0,90,60,22,33);在原来数组中增加元素时 会在下标前面增加元素。
删arr.splice(2,2);
改arr.splice(2,1,60);