分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

原生JS forEach()和map()遍历,jQuery$.each()和$.map()遍历

发布时间:2023-09-06 01:36责任编辑:胡小海关键词:jQuery遍历

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

共同点:

1.都是循环遍历数组中的每一项。 
2.forEach() 和 map() 里面每一次执行匿名函数都支持3个参数:数组中的当前项item,当前项的索引index,原始数组input。 
3.匿名函数中的this都是指Window。 
4.只能遍历数组。

1.forEach()

没有返回值,修改的是原数组。

var ary = [12,23,24,42,1]; ?????var res = ary.forEach(function (item,index,input) { ????????????input[index] = item*10; ?????}) ?????console.log(res);//-->undefined; ?????console.log(ary);//-->[ 120, 230, 240, 420, 10 ];

2.map()

有返回值,可以return 出来。不修改原数组。

var ary = [12,23,24,42,1]; ?var res = ary.map(function (item,index,input) { ?????return item*10; ?}) ?console.log(res);//-->[120,230,240,420,10]; ?console.log(ary);//-->[12,23,24,42,1]; 

二、jQuery .each()和.map()遍历

共同点:

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

1.$.each()

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

$.each( ["a","b","c"], function(i, n){ ???console.log( i + ": " + n ); ?}); ??// 0: a ?// 1: b ?// 2: c
 $.each( { name: "John", lang: "JS" }, function(k, n){ ?????????console.log( "Name: " + k + ", Value: " + n ); ?????}); ??????//Name: name, Value: John ????// Name: lang, Value: JS

2.$.map()

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

var arr=$.map( [0,1,2], function(n,i){ ??????????return n+i; ???}); ?????console.log(arr); ????//[ 0, 2, 4 ]$.map({"name":"Jim","age":17},function(n,i){ ??????console.log(n+":"+i); ??}); ????//Jim:name ???//17:age


原生JS forEach()和map()遍历,jQuery$.each()和$.map()遍历

原文地址:https://www.cnblogs.com/chiangyibo/p/8278642.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved