jquery数组
jQuery 数组操作
jQuery 本身并不提供专门的数组操作工具,但可以与 JavaScript 原生数组方法结合使用。以下是常见的数组操作场景及实现方式。
遍历数组
使用 $.each() 方法可以方便地遍历数组或对象。
语法:
$.each(array, function(index, value) {
console.log(index + ": " + value);
});
示例:
var arr = ["a", "b", "c"];
$.each(arr, function(i, val) {
console.log(i + ": " + val); // 输出 0: a, 1: b, 2: c
});
筛选数组
结合 JavaScript 的 filter() 方法实现筛选:
var numbers = [1, 2, 3, 4, 5];
var even = numbers.filter(function(num) {
return num % 2 === 0;
});
console.log(even); // 输出 [2, 4]
映射数组
使用 map() 方法对数组元素进行转换:
var squares = $.map([1, 2, 3], function(val) {
return val * val;
});
console.log(squares); // 输出 [1, 4, 9]
合并数组
通过 $.merge() 合并两个数组(会修改第一个数组):
var arr1 = [1, 2];
var arr2 = [3, 4];
$.merge(arr1, arr2);
console.log(arr1); // 输出 [1, 2, 3, 4]
检查元素是否存在
使用 $.inArray()(类似 indexOf):
var arr = ["apple", "banana"];
if ($.inArray("banana", arr) !== -1) {
console.log("存在");
}
去重数组
结合 $.unique()(仅适用于 DOM 元素数组)或原生方法:
var arr = [1, 2, 2, 3];
var unique = [...new Set(arr)];
console.log(unique); // 输出 [1, 2, 3]
转换为 jQuery 对象
将数组转换为 jQuery 对象(需元素为 DOM):
var divs = $(["<div>", "<div>"]); // 创建两个 div 的 jQuery 对象
注意事项
- jQuery 的数组方法(如
$.each)通常兼容旧版浏览器。 - 现代项目中建议优先使用原生 JavaScript 的
forEach、filter、map等方法。 $.makeArray()可将类数组对象(如 jQuery 对象)转为真数组。







