JS数组新增方法
indexOf()
格式:数组.index(item,start);
参数:item 任意的数据
start 下标 可以不传入,默认是0
功能:在数据中查找第一次出现item元素下标,从start开始去查找
返回值:-1 没有查找到
>=0 查找到的元素的下标
filter() 过滤
例:
var arr = [10,20,30,40,50];
var newArr = arr.filter(function(item,index,arr)
{
//过滤的条件
return item > 20;
});
alert(newArr); // 30,40,50
alert(arr); // 10,20,30,40,50
some 某些
【注】 在数组中查找是否有符合条件的元素,有返回true,没有返回false
短路操作:只要查找到符合条件的元素,后面的循环就停止了
例:
var arr = [10,20,30,40,50];
var res = arr.some(function(item,index,arr)
{
//过滤的条件
return item > 20;
});
alert(res); // true
every 每一个
【注】 在数组中查找每一个元素是否有符合条件,符合返回true,不符合返回false;
短路操作:只要查找到不符合条件的元素,后面的循环就停止了
reduce 归并
例:
var arr = [10,20,30,40,50];
var res = arr.reduce(function(prev,next,index,arr)
{
/*
prev 第一次是 下标为0的元素
第二次开始 上一次遍历return的值
next 从下标1开始,当前遍历到的元素
arr数组本身
*/
alert(prev + "," + next);
return prev + next;
});
alert(res);
// 10,20
30,30
60,40
100,50
150