原生JS、jQuery 遍历方法总结

一、原生JS: forEach()和map()遍历

共同点:

1.都是循环遍历数组中的每一项。

2.forEach() 和 map() 里面每一次执行匿名函数都支持3个参数:数组中的当前项item,当前项的索引index,原始数组input。

3.匿名函数中的this都是指Window。

4.只能遍历数组。

(1)、forEach() : 没有返回值

var arr = [12,23,24,42,1];
var res = arr.forEach(function (item,index,input) {
   input[index] = item*10;
})
console.log(res);//-->undefined;
console.log(arr);//-->会对原来的数组产生改变;

(2)、map() : 有返回值,可以return出来

var arr = [1,2,3,4,5];
var res = arr.map(function (item,index,input) {
    return item * 10;
})
console.log(res);//-->[10,20,30,40,50];
console.log(arr);//-->[1,2,3,4,5];
二、jQuery $.each()和$.map()遍历

共同点:

即可遍历数组,又可遍历对象。

(1)、$.each():没有返回值.支持的匿名函数有2个参数:如果遍历的是数组,i为当前项的索引,n为数组中的当前项。如果遍历的是对象,k 是键,n 是值。

//数组:i为索引,n为值
$.each( [1,2,3,4], function(i, n){
     console.log( i + ": " + n );
});

//对象:k为键名,n为值
$.each( { name: "John", lang: "JS" }, function(k, n){
 console.log(  k + ": "+ n );
});

(2)、$.map():有返回值,可以return 出来。支持匿名函数有2个参数(和$.each()里的参数位置相反):数组中的当前项n,当前项的索引i。如果遍历的是对象,i 是值,n 是键。

//数组:n为值,i为索引
var arr=$.map( [0,1,2], function(n,i){
     return n + 4;
});
console.log(arr);

//对象:n为值,k为键名
$.map({"name":"Jim","age":17},function(n,k){
     console.log(k+":"+n);
});
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值