js-each、foreach、map-区别-示例详解

两种循环的区别:

each、foreach 循环数组或者对象,在循环中处理数据

map 是循环数组 然后返回一个新的数据,在循环中处理数据并返回一个新的数据,看到map应该可以想到映射,其实map的也就是将一个数组映射为另外一个数组

----------------------------------------------------------------------------------------------------------------------------------------------------------------

each、foreach 详解

each为jquery的循环方法,foreach为js的循环方法,

两者最大的区别是

$.each(arr,function(index,item)) 参数为数组和回调函数,回调函数参数为元素在数组中得下标、每个元素

 
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>demo</title>	
<style>
	div { color:blue; }
	p { color:green; margin:0; }
	span { color:red; }
</style>
  <script src="js/jquery-3.3.1.js"></script>
</head>
<body>

<div></div>
<p></p>
<span></span>
<script>
$(function () { 
	var arr = [ "a", "b", "c", "d", "e" ];
    //each循环
    $.each(arr,function(index,item){
        $("div").text(arr.join(","));
    });

    //each循环-箭头函数
    $.each(arr,(index,item) => {
        $("p").text(arr.join(","));
    });
     
	 
})
</script>
 
</body>
</html>

 

 

arr.foreach(function(item,index)) 参数为回调函数,回调好吃的参数为,每个元素、元素在数组中的下标

 
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>demo</title>	
<style>
	div { color:blue; }
	p { color:green; margin:0; }
	span { color:red; }
</style>
  <script src="js/jquery-3.3.1.js"></script>
</head>
<body>

<div></div>
<p></p>
<span></span>
<script>
$(function () { 
	var arr = [ "a", "b", "c", "d", "e" ];
    //foreach循环
    arr.forEach(function(item,index){
        $("div").text(arr.join(","));
    });
    //foreach循环-箭头函数
    arr.forEach((item,index) =>{
        $("p").text(arr.join(","));
     });
     
	 
})
</script>
 
</body>
</html>

结果

备注:jquery的 each 循环可以对对象做循环,示例如下

 
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>demo</title>	
<style>
	div { color:blue; }
	p { color:green; margin:0; }
	span { color:red; }
</style>
  <script src="js/jquery-3.3.1.js"></script>
</head>
<body>

<div></div>
<p></p>
<span></span>
<script>
$(function () { 
	var obj = {"姓名":"张三","年龄":"25"}
    $.each(obj,function(key,val){
        $("div").append(key+":"+val+"</br>");
    });
	 
})
</script>
 
</body>
</html>

运行结果

Jquery-Map 

 
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>demo</title>	
<style>
	div { color:blue; }
	p { color:green; margin:0; }
	span { color:red; }
</style>
  <script src="js/jquery-3.3.1.js"></script>
</head>
<body>

<div></div>
<p></p>
<span></span>
<script>
$(function () { 
	var arr = [ "a", "b", "c", "d", "e" ];
    //jquery-map-获得新的数组
    arr = $.map(arr,function(item,index){
        return item+index;
    });
    $("div").text(arr.join(","));

    //jquery-mao-箭头函数-获得新的数组
    arr = $.map(arr,(item,index) => {
        return item +index+index+index+item;
    });
    $("p").text(arr.join(","));
	 
})
</script>
 
</body>
</html>

运行结果

 

Js-Map

 
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>demo</title>	
<style>
	div { color:blue; }
	p { color:green; margin:0; }
	span { color:red; }
</style>
  <script src="js/jquery-3.3.1.js"></script>
</head>
<body>

<div></div>
<p></p>
<span></span>
<script>
$(function () { 
	var arr = [ "a", "b", "c", "d", "e" ];
    //js-Map-获取新的数组
    arr = arr.map(function(item,index){
        return item+index;
    });
    $("div").text(arr.join(","));

    //Js-Map-箭头函数-获取新的数组
    arr = arr.map((item,index) => {
        return item+index+index+index+item;
    });
    $("p").text(arr.join(","));
	 
})
</script>
 
</body>
</html>

运行结果

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值