ECMAscript5 新增数组内函数
2021-07-12 07:06
                         标签:功能   过滤   图片   var   soscw   for循环   res   bsp   假设     indexOf()       . forEach(function(item, index, arr ){ })  forEach() 				for循环 效果: 传统方式     				filter() 过滤    /*  【注】只要找到第一个符合条件的元素,就直接退出循环。    every() 				【注】找到第一个不符合条件的元素,就终止循环,返回false 				返回值:true false   将上述代码中的判断条件修改为:   结果就为真:    reduce() 归并 语法:数组.reduce(function(prev, next, index, arr){ }) prev 上一次循环 return后面表达式的结果       ECMAscript5 新增数组内函数 标签:功能   过滤   图片   var   soscw   for循环   res   bsp   假设    原文地址:https://www.cnblogs.com/taohuaya/p/9547174.html
				格式:数组.indexOf(item, start)
				功能:从start这个下标开始,查找item在数组中的第一次出现的下标。
				参数:item 我们要去查找的元素
					 start从哪个下标开始去查找,如果不传,默认从0开始查找
				返回值: -1 没有找到
					   >=0 查到到的下标var arr = ["蝙蝠侠", "超人", "闪电侠", "绿灯侠", "神奇女侠", "绿灯侠"];
var res = arr.indexOf("绿灯侠", 4);
alert(res);// 5
var arr = ["蝙蝠侠", "超人", "闪电侠", "绿灯侠", "神奇女侠", "绿灯侠"];
var res = indexOf(arr, "绿灯sss侠");
alert(res);// -1  未找到
			//自定义的(自己封装函数)indexOffunction indexOf(arr, item, start){
        var index = -1;//假设找不到
        if(!start){
            start = 0;
        }
    for(var i = start; i ){
        if(arr[i] === item){
            index = i;
            break;
        }
    }
    return index;
}        
				格式:数组.forEach(function(item, index, arr){
					item  当前遍历的到元素
					index 当前遍历到的元素下标
					arr   当前数组本身
				})
				功能:用来遍历数组。
				for...in
				forEachvar arr = ["蝙蝠侠", "超人", "闪电侠", "绿灯侠", "神奇女侠", "绿灯侠"];
arr.forEach(function(item, index, arr){
  alert(item + ", " + index);
})

for(var i = 0; i ){
  alert(arr[i]);
}
map() 遍历var arr = [10, 20, 30, 40, 50];
var newArr = arr.map(function(item, index, arr){
  return item * 1.3; //newArr对应下标的结果
})
alert(arr);//10, 20, 30, 40, 50
alert(newArr);//13,26, 39, 52, 65
  var arr = [10, 20, 30, 40, 50];
var newArr = arr.filter(function(item, index, arr){
  //找出原数组中大于20的所有元素,生成一个新数组
  return item > 20; //过滤条件
});
alert(arr);//10, 20, 30, 40, 50
alert(newArr);//30, 40, 50
some() 某些
				判断是否有符合条件的元素存在。
				返回值: true  falsevar arr = [10, 20, 30, 40, 50];
var res = arr.some(function(item, index, arr){
    // alert(item + ", " + index);
    //判断的条件。
    return item > 20;
})
alert(res);//30, 40, 50
				判断所有元素是否都符合条件。var arr = [10, 20, 30, 40, 50];
var res = arr.every(function(item, index, arr){
    alert(item + ", " + index);
    //判断的条件。
    return item ;
})
alert(res);// false
return item > 5;
alert(res);// true
next 这一次遍历的元素
index 这一次遍历的元素的下标var arr = [10, 20, 30, 40, 50];
var res = arr.reduce(function(prev, next, index, arr){
/*
prev 上一次循环 return后面表达式的结果
next 这一次遍历的元素
index 这一次遍历的元素的下标
*/
  alert(prev + ", " + next);
  return prev + next;
})
alert(res);//150 通过此种方法实现了求数组元素的总和
文章标题:ECMAscript5 新增数组内函数
文章链接:http://soscw.com/index.php/essay/104054.html