JQuery中$.each 和$(selector).each()的区别详解

关于JQuery中.each()方法的区别,其实涉及到两种不同的调用方式:$.each()$(selector).each()

$.each()

$.each()是JQuery提供的静态方法,其作用是遍历一个对象或者数组。

使用方式如下:

$.each(obj, function(key, value){
    // 处理逻辑
});

其中,obj是要遍历的对象,function则是每次进行处理的回调函数。这个回调函数中,key用于表示对象的键,value表示对象的值。

例如:

// 遍历一个数组
var arr = ['one', 'two', 'three'];
$.each(arr, function(index, value){
    console.log(index + ': ' + value);
});

// 遍历一个对象
var obj = {
    name: '张三',
    age: 18,
    gender: '男'
};
$.each(obj, function(key, value){
    console.log(key + ': ' + value);
});

上述示例中,第一个$.each()方法将会遍历数组arr,输出其每一个元素的值;第二个$.each()方法将会遍历对象obj,输出其每一个键值对的值。

$(selector).each()

$.each()不同,$(selector).each()是JQuery提供的实例方法,它的作用是遍历匹配到的元素列表。

使用方式如下:

$(selector).each(function(index, element){
    // 处理逻辑
});

其中,selector是要匹配的元素选择器,function则是每次进行处理的回调函数。回调函数中的index表示元素在列表中的索引,element表示当前处理的元素对象。

例如:

// 遍历所有input元素
$('input').each(function(index, element){
    console.log(index + ': ' + element.value);
});

上述示例中,$('input')将会匹配页面中所有input元素,each()方法将会依次遍历每一个匹配到的元素,并输出其value属性的值。

区别

可以发现,$.each()方法是没有选择器的,因此只能遍历给出的对象或者数组。而$(selector).each()方法是依靠选择器匹配元素,因此只能遍历匹配到的元素列表。

示例

示例:遍历表格中的所有单元格

使用$.each()方法可以遍历一个数组,而使用$(selector).each()方法可以遍历匹配到的元素列表。两者结合起来,可以遍历表格中的所有单元格:

var cells = [];  // 用于存储所有单元格对象
$('table tr').each(function(row_index, row){
    $(row).find('td').each(function(col_index, cell){
        console.log(row_index + '-' + col_index + ': ' + cell.textContent);
        cells.push(cell);
    });
});

console.log(cells.length);  // 输出表格中单元格的数量

说明:

  • 首先使用$('table tr').each()方法遍历表格的每一行,row_index表示行的索引,row表示行对象。
  • 在行遍历的过程中,使用$(row).find('td').each()方法遍历当前行的所有单元格,col_index表示列的索引,cell表示单元格对象。
  • 在每次处理单元格时,将它的内容输出,并将其存储到cells数组中。
  • 最后,输出cells.length可以查看表格中单元格的数量。

示例:遍历一个对象

再次展示$.each()方法的使用,这次遍历一个javascript对象,并输出其键和值:

var person = {
    name: '张三',
    age: 18,
    gender: '男'
};

$.each(person, function(key, value){
    console.log(key + ': ' + value);
});

以上代码将输出:

name: 张三
age: 18
gender: 男

说明:

  • 首先定义了一个person对象,它有三个属性:nameagegender
  • 然后,使用$.each()方法遍历person对象,输出其每一个键值对的键和值。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JQuery中$.each 和$(selector).each()的区别详解 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • jQuery实现表单提交时判断的方法

    当使用jQuery进行表单提交时,我们可以使用以下方法来进行表单提交时的判断,以确保提交的数据格式正确: 提交前进行表单校验 在表单提交之前,我们可以编写一段jQuery代码来进行表单校验,确保用户输入的数据格式正确。具体实现步骤如下: (1)取得表单元素和相应的值 var name = $("#name").val(); var age…

    jquery 2023年5月28日
    00
  • jQWidgets jqxKnob max属性

    jQWidgets jqxKnob max属性攻略 jQWidgets 是一个基于 jQuery 的 UI 组件库,提供了丰富的 UI 组件和工具,可于创建现代化应用程序。 jqxKnob 旋钮,于可视化调整数值。本攻略将详细介绍 jqxKnob 的 max 属性,该属性用于设置旋钮的最大值。 max属性 jqxKnob 组件的 max 属性用于设置旋钮的最…

    jquery 2023年5月10日
    00
  • jQuery Plupload上传插件的使用

    下面是“jQuery Plupload上传插件的使用”的完整攻略: jQuery Plupload上传插件的使用 介绍 jQuery Plupload是一个支持HTML5,Flash,Silverlight,HTML4等多种上传方式的插件。它可以帮助我们实现更多样化的文件上传交互效果,并支持分块上传、多文件上传、预览上传等功能。 安装和引用 1.下载jQue…

    jquery 2023年5月27日
    00
  • 如何使用jQuery Mobile制作一个水平分组单选按钮

    以下是使用jQuery Mobile制作一个水平分组单选按钮的完整攻略: 首先,在HTML文件中引入jQuery Mobile库。可以以下代码实现: <head> <meta name="viewport" content="width=device-width, initial-scale=1"&g…

    jquery 2023年5月11日
    00
  • 浅析jQuery 遍历函数,javascript中的each遍历

    浅析jQuery 遍历函数,javascript中的each遍历 jQuery 遍历函数 在 jQuery 中,我们可以使用许多遍历函数来查找和操作文档中的元素。以下是一些常用的jQuery遍历方法: children(): 返回被选元素的所有直接子元素。 find(): 返回被选元素的后代元素。 siblings(): 返回被选元素的所有同级元素。 nex…

    jquery 2023年5月28日
    00
  • DataTables ajax选项

    以下是关于DataTables ajax选项的完整攻略: ajax选项是什么? ajax选项是DataTables中的一个选项,用于指定获取数据的方式。使用ajax选项,可以通过异步请求从服务器获取数据,然后将数据填充到表格中。 如何ajax选项? 可以使用以下代码来设置ajax选项: $(‘#example’).DataTable( { "aja…

    jquery 2023年5月11日
    00
  • jQWidgets jqxTreeGrid rowExpand事件

    以下是关于 jQWidgets jqxTreeGrid 组件中 rowExpand 事件的详细攻略。 jQWidgets jqxTreeGrid rowExpand 事件 jQWidgets jqxTreeGrid 组件的 rowExpand 事件在用户展开 TreeGrid 控件的行时触发。通过设置 rowExpand 事件处理程序,可以在展开行时执行自定…

    jquery 2023年5月12日
    00
  • jQWidgets jqxTagCloud hideItem()方法

    jQWidgets jqxTagCloud hideItem()方法 方法概述 hideItem()方法是jQWidgets jqxTagCloud插件中用于隐藏一个标签的方法。调用该方法会隐藏指定索引的标签。这个方法的语法如下: $(‘#jqxTagCloud’).jqxTagCloud(‘hideItem’, index); 参数说明 hideItem(…

    jquery 2023年5月12日
    00
合作推广
合作推广
分享本页
返回顶部