
地 址:北京市昌平区66号
网址:dsesh.com
邮 箱:13954747@qq.com
jQuery 是循环一个(ge)快速、简洁的赋值 JavaScript 库,它简化了 HTML 文(wen)档遍历、循环事件处理、赋值动画和 AJAX 交互等操作,循环在 jQuery 中,赋值我们可以(yi)使用多种方法(fa)来实现循环,循环包括 .each()、赋值.map()、循环.filter() 等,赋值下面将详细介绍这些方法的循环使用。(图片来源网络,赋值侵删)
1、循环.each() 方法

.each() 方(fang)法是赋值(zhi) jQuery 中最(zui)常用、最简单的循环循环方(fang)法,它接(jie)受一个回调函数作(zuo)为参数,该回调函数会在(zai)每(mei)个匹配的元素上执行(xing)一次,回调函数可以接受两个参数:第一个参数是当前元素的索引(从0开始),第二个参数是(shi)当前元素本身。

示例代码:

// 遍历所有段落元素,为它们添加一个(ge)类名 "highlight"$("p").each(function(index, element) { $(element).addClass("highlight");});2、.map() 方法
.map() 方法用于遍历数组或对象,并对每个元素执行指(zhi)定的函数,然后将结果(guo)组成一个新的数组或对象返回,它接受一个回调函数作为参数,该回调函数可以接受三个参数:第一个(ge)参数(shu)是当前元素的索引(从0开始),第二(er)个参数是当前元素本身,第三个参数是当前元素所属的(de)数组或对象。
示(shi)例代码:
// 获取所有段落元素的文本内容(rong),并将它(ta)们组成一个新的数组var paragraphs = $("p").map(function(index, element) { return $(element).text();}).get();console.log(paragraphs); // ["这是第(di)一个段落", "这是第二个段落", "这是第(di)三个段落"]3、.filter() 方法
.filter() 方法用于筛选数组(zu)或对象中满足指定条件的元素,并(bing)返回(hui)一个新的数组或(huo)对象,它接(jie)受一个回调函数作为参数,该回调函数可以(yi)接受三个参数:第一个参数是当前元素的索引(从0开始),第二(er)个参数是当前元素本身,第三个参数是当前元素所属的数组或对象。
示例代码:
// 筛选出所有包含文本 "这是" 的段落元素,并将它们组成一个新的数(shu)组var filteredParagraphs = $("p").filter(function(index, element) { return $(element).text().indexOf("这是") !== 1;}).get();console.log(filteredParagraphs); // ["这是第一个段落", "这是第二个段落"]4、$.each() 方法
除了 .each() 方法外,jQuery 还(hai)提供了一个全局的 $.each() 方法,它可以用于遍历任(ren)何对象(如数(shu)组(zu)、对象等),它接受两个参数:第一个参数是要遍历的对象,第二个参数是(shi)一个回调函数,回调函数可以接(jie)受三个参数:第一个参(can)数(shu)是当前元素的键名(对于数组来说是(shi)索引,对(dui)于对象来说是(shi)属性名),第二个参数是当前元素的值,第三个参数是当前元素所属的对象。
// 遍历一个数组,并为每个元素添加一个类名 "highlight"$.each([1, 2, 3], function(index, value) { $("<div>").text(value).addClass("highlight").appendTo("body");});5、$.map() 方法(fa)
与 .map() 方法类(lei)似,jQuery 还提供了(le)一个全局的 $.map() 方法,它可以用于遍历任(ren)何对象(如数组、对象等),它接受两个参(can)数:第一个参数是要遍历的对象,第二(er)个参数(shu)是一个回调函数,回调函数可以接受三个参数(shu):第一个参数是当前元素的键名(对于数组来说是索引,对于对(dui)象(xiang)来说是属性名),第二个参数是当前元素的(de)值,第三个参数是当前元素所属的对象(xiang),与 .map() 方法不同的是,$.map() 方法会(hui)返回一个新的数组,而不会修改原始对象。
示例代(dai)码:
// 获取一个对象的键名和值组(zu)成的数组,并将它们组成一个新的二维数组var obj = { a: 1, b: 2, c: 3};var result = $.map(obj, function(value, key) { return [key, value];});console.log(result); // [["a", 1], ["b", 2], ["c", 3]]6、$.filter() 方法
与 .filter() 方法类似,jQuery 还提供了一个(ge)全(quan)局的(de) $.filter() 方法,它可(ke)以用于筛选任何对象(如数组、对象等)中满足指定(ding)条件的元素,它接受两个参数(shu):第一个参(can)数是要筛选的对象,第二个参数(shu)是一个回(hui)调函数(shu),回调函数(shu)可以接受三个参数:第一个(ge)参数是当前元素的键名(ming)(对于数组来说(shuo)是索引,对于对(dui)象(xiang)来说是属性名),第二个参数是当(dang)前元素的值,第三个参数是(shi)当前元素所属的对象,与 .filter() 方法(fa)不同的是,$.filter() 方(fang)法会返回一个新的数组或对象,而不会修改原始对象(xiang)。