jquery 迭代
jQuery 迭代方法
jQuery 提供了多种迭代方法,用于遍历集合(如 DOM 元素、数组或对象)。以下是常见的迭代方法及其用法:
each() 方法
each() 是 jQuery 中最常用的迭代方法,用于遍历 jQuery 对象或数组。语法如下:
$(selector).each(function(index, element) {
// 操作逻辑
});
index:当前元素的索引。element:当前 DOM 元素(可直接用this代替)。
示例:
$('li').each(function() {
console.log($(this).text());
});
map() 方法
map() 用于遍历集合并返回一个新的数组。语法如下:
$.map(array, function(value, index) {
// 返回处理后的值
});
示例:
const numbers = [1, 2, 3];
const squared = $.map(numbers, function(num) {
return num * num;
});
console.log(squared); // [1, 4, 9]
grep() 方法
grep() 用于过滤数组,返回满足条件的元素。语法如下:
$.grep(array, function(value, index) {
// 返回 true 保留元素,false 过滤元素
});
示例:
const numbers = [1, 2, 3, 4];
const evens = $.grep(numbers, function(num) {
return num % 2 === 0;
});
console.log(evens); // [2, 4]
遍历对象
使用 $.each() 遍历对象的键值对:

const obj = { name: 'Alice', age: 25 };
$.each(obj, function(key, value) {
console.log(key + ': ' + value);
});
注意事项
- 使用
each()时,回调函数中的this指向当前 DOM 元素,需用$(this)转换为 jQuery 对象。 map()和grep()返回新数组,不会修改原数组。- 原生 JavaScript 方法(如
forEach)也可用于遍历,但需注意兼容性。






