首先,jquery选择器返回jquery对象!!!

只不过jquery对象有length属性,会告诉你这个jquery对象包含多少个dom对象。

如果直接使用jquery对象,可以去参阅jquery文档。

其次jquery对象根据下标取值后,会返回dom对象!!!

一、当使用id选择器时,会返回对应的jquery对象,这时直接使用jquery提供的对象方法即可,而使用[0]可以获取dom对象:

let files = $("#uploadFile_batchImport");
let file = files[0].files[0];

以上代码中,files是jquery对象,files[0]是dom元素,file则是dom元素的files属性的第一个文件。

二、当使用类选择器时,返回的是多个dom对象组成的jquery对象,如:

let obj = $(".intro");

let aDom = obj[0];

此时,obj是多个dom元素组成的jquery对象,aDom是个dom对象。

jQuery对象转DOM对象,$("span")[0]即为第一个span DOM元素,而$(DOM对象)就成了jQuery对象。即可简单理解为jQuery对象是DOM对象的集合。所以spans既作为数组又作为jQuery对象,这与JS的数组定义不矛盾。

参考:https://www.oschina.net/question/229355_109315

https://www.iteye.com/problems/77626

以下是runoob中的选择器,用于参考。

选择器 实例 选取
* $("*") 所有元素
#id $("#lastname") id="lastname" 的元素
.class $(".intro") class="intro" 的所有元素
.class,.class $(".intro,.demo") class 为 "intro" 或 "demo" 的所有元素
element $("p") 所有 <p> 元素
el1,el2,el3 $("h1,div,p") 所有 <h1>、<div> 和 <p> 元素
     
:first $("p:first") 第一个 <p> 元素
:last $("p:last") 最后一个 <p> 元素
:even $("tr:even") 所有偶数 <tr> 元素,索引值从 0 开始,第一个元素是偶数 (0),第二个元素是奇数 (1),以此类推。
:odd $("tr:odd") 所有奇数 <tr> 元素,索引值从 0 开始,第一个元素是偶数 (0),第二个元素是奇数 (1),以此类推。
     
:first-child $("p:first-child") 属于其父元素的第一个子元素的所有 <p> 元素
:first-of-type $("p:first-of-type") 属于其父元素的第一个 <p> 元素的所有 <p> 元素
:last-child $("p:last-child") 属于其父元素的最后一个子元素的所有 <p> 元素
:last-of-type $("p:last-of-type") 属于其父元素的最后一个 <p> 元素的所有 <p> 元素
:nth-child(n) $("p:nth-child(2)") 属于其父元素的第二个子元素的所有 <p> 元素
:nth-last-child(n) $("p:nth-last-child(2)") 属于其父元素的第二个子元素的所有 <p> 元素,从最后一个子元素开始计数
:nth-of-type(n) $("p:nth-of-type(2)") 属于其父元素的第二个 <p> 元素的所有 <p> 元素
:nth-last-of-type(n) $("p:nth-last-of-type(2)") 属于其父元素的第二个 <p> 元素的所有 <p> 元素,从最后一个子元素开始计数
:only-child $("p:only-child") 属于其父元素的唯一子元素的所有 <p> 元素
:only-of-type $("p:only-of-type") 属于其父元素的特定类型的唯一子元素的所有 <p> 元素
     
parent > child $("div > p") <div> 元素的直接子元素的所有 <p> 元素
parent descendant $("div p") <div> 元素的后代的所有 <p> 元素
element + next $("div + p") 每个 <div> 元素相邻的下一个 <p> 元素
element ~ siblings $("div ~ p") <div> 元素同级的所有 <p> 元素
     
:eq(index) $("ul li:eq(3)") 列表中的第四个元素(index 值从 0 开始)
:gt(no) $("ul li:gt(3)") 列举 index 大于 3 的元素
:lt(no) $("ul li:lt(3)") 列举 index 小于 3 的元素
:not(selector) $("input:not(:empty)") 所有不为空的输入元素
     
:header $(":header") 所有标题元素 <h1>, <h2> ...
:animated $(":animated") 所有动画元素
:focus $(":focus") 当前具有焦点的元素
:contains(text) $(":contains('Hello')") 所有包含文本 "Hello" 的元素
:has(selector) $("div:has(p)") 所有包含有 <p> 元素在其内的 <div> 元素
:empty $(":empty") 所有空元素
:parent $(":parent") 匹配所有含有子元素或者文本的父元素。
:hidden $("p:hidden") 所有隐藏的 <p> 元素
:visible $("table:visible") 所有可见的表格
:root $(":root") 文档的根元素
:lang(language) $("p:lang(de)") 所有 lang 属性值为 "de" 的 <p> 元素
     
[attribute] $("[href]") 所有带有 href 属性的元素
[attribute=value] $("[href='default.htm']") 所有带有 href 属性且值等于 "default.htm" 的元素
[attribute!=value] $("[href!='default.htm']") 所有带有 href 属性且值不等于 "default.htm" 的元素
[attribute$=value] $("[href$='.jpg']") 所有带有 href 属性且值以 ".jpg" 结尾的元素
[attribute|=value] $("[title|='Tomorrow']") 所有带有 title 属性且值等于 'Tomorrow' 或者以 'Tomorrow' 后跟连接符作为开头的字符串
[attribute^=value] $("[title^='Tom']") 所有带有 title 属性且值以 "Tom" 开头的元素
[attribute~=value] $("[title~='hello']") 所有带有 title 属性且值包含单词 "hello" 的元素
[attribute*=value] $("[title*='hello']") 所有带有 title 属性且值包含字符串 "hello" 的元素
[name=value][name2=value2] $( "input[id][name$='man']" ) 带有 id 属性,并且 name 属性以 man 结尾的输入框
     
:input $(":input") 所有 input 元素
:text $(":text") 所有带有 type="text" 的 input 元素
:password $(":password") 所有带有 type="password" 的 input 元素
:radio $(":radio") 所有带有 type="radio" 的 input 元素
:checkbox $(":checkbox") 所有带有 type="checkbox" 的 input 元素
:submit $(":submit") 所有带有 type="submit" 的 input 元素
:reset $(":reset") 所有带有 type="reset" 的 input 元素
:button $(":button") 所有带有 type="button" 的 input 元素
:image $(":image") 所有带有 type="image" 的 input 元素
:file $(":file") 所有带有 type="file" 的 input 元素
:enabled $(":enabled") 所有启用的元素
:disabled $(":disabled") 所有禁用的元素
:selected $(":selected") 所有选定的下拉列表元素
:checked $(":checked") 所有选中的复选框选项
.selector $(selector).selector 在jQuery 1.7中已经不被赞成使用。返回传给jQuery()的原始选择器
:target $( "p:target" ) 选择器将选中ID和URI中一个格式化的标识符相匹配的<p>元素

jquery 选择器返回值;jquery选择器返回对象还是数组?相关推荐

  1. Java手写线程池(不带返回值、带返回值)

    文章目录 不带返回值 带返回值 不带返回值 public class MyThreadPool {private static final int DEFAULT_THREAD_NUM = 10;pr ...

  2. java 定时器返回值_javascript 函数返回值(return)、定时器(setTimeout、setInterval)...

    一.函数的返回值:return 1.函数名+括号=return后面的值 function fn1(){ return 100; } alert(fn1()); // 100 fn1()=return后 ...

  3. 【C 语言】C 项目开发代码规范 ( 形参合法性判断 | 函数返回值局部变量 | 函数中不用全局变量 | 函数中使用局部变量接收形参 | 函数返回值 | 形参作返回值 | 形参返回值处理 )

    文章目录 一.C 项目开发代码规范 一.C 项目开发代码规范 上一篇博客 [C 语言]字符串模型 ( 键值对模型 ) 中 , 完成了字符串的 键值对 查找功能 , 代码不太规范 ; C 项目开发代码规 ...

  4. 第八天学习Java的笔记(方法有参无参,有返回值和无返回值)

    48天 方法 对比有参数和无参数 package Demo03;/* * 有参数:小括号当中有内容,当一个方法需要一些数据条件才能完成任务的时候,就是有参数 * 例如两个数字相加,必须知道两个数字各是 ...

  5. Python教程:函数多个返回值与丢弃返回值

    1.函数多个返回值 python的函数支持返回多个值.返回多个值时,默认以tuple的方式返回. 例如,下面两个函数的定义是完全等价的. def f():return 1,2def f():retur ...

  6. html 下拉列表返回值,jquery 根据后台返回值来选中下拉框 option 值

    前景:下拉列表和要选中的下拉项都是通过后台传过来的本人用字符串拼接很low的方法实现: 一  给下拉框加一个默认的option 放在第一个类似于"无"或者"请选择&quo ...

  7. ajax.updater 返回值,jquery中Ajax.updater的等价物是什么?

    有使用一些方法阿贾克斯一样jQuery.ajax({...}) or $.ajax({...})除此之外还有它们的一些简化的版本太像: $.get()或jQuery.get() $.post()或jQ ...

  8. javascript中构造函数的返回值问题和new对象的过程

    首先明白一点:javascript中构造函数是不须要有返回值的,这一点跟java非常类似.能够觉得构造函数和普通函数的最大区别就是:构造函数中没有return语句,普通函数能够有return语句.构造 ...

  9. java 接口 返回值_java api返回值的标准化详解

    api返回值的标准化 例如 {"status":200,"message":"操作成功","data":"{\ ...

  10. python 子线程返回值_python-从线程返回值

    python-从线程返回值 我如何获得一个线程以将元组或我选择的任何值返回给Python中的父级? 12个解决方案 59 votes 我建议您在启动线程之前实例化Queue.Queue,并将其作为线程 ...

最新文章

  1. 独家|一文解读合成数据在机器学习技术下的表现
  2. 教你用深度学习LSTM网络预测流行音乐趋势(附代码)
  3. python协同过滤调用包_简单的python协同过滤程序实例代码
  4. 在cad如果用计算机,CAD如何使用快速计算器为中的变量区域功能
  5. 使用ELK在DC / OS中进行日志管理
  6. B - 最短路径问题
  7. 路由交换技术-实验4:VLAN创建、划分、修剪及Trunk链路
  8. 百度地图API详解之公交路线规划
  9. 关于指针的面试题,指向字符串和字符数组的单指针,二级指针,三级指针的使用。
  10. T83723 数人wjh --题解
  11. 史上最详细Proof处理教程--Elsevier平台(一)~
  12. 入职开发很少写代码_如何简化开发人员入职:将开发环境作为代码
  13. proftpd mysql_ProFTPD的MySQL数据库
  14. 2019年互联网公司月饼哪家强?阿里、百度、网易等14家中秋月饼盘点
  15. 计算机网络原理第3章 数据链路层 (超全知识点+例题)
  16. 假设R1、R2、R3采用RIP协议交换路由信息,且均已收敛。若R3检测到网络201.1.2.0/25不可达,并向R2通告一次新的距离向量,则R2更新后,其到达该网络的距离是
  17. 电信百兆宽带使用攻略
  18. IDEA2019 Java连接PostgreSQL数据库实现基础功能增删改查
  19. 道德经·太上,不知有之
  20. java classes.jar_java中class文件与jar文件

热门文章

  1. linux mint如何升级,如何升级到Linux Mint 19
  2. c语言已知年第几天求哪月哪日,已知今天的日期(年月日),求明天的日期(年月日)...
  3. 科沃斯t20和t10区别对比评测选哪个好
  4. Arduino 驱动OLED屏幕IIC接线方式简单入门
  5. 小米10获取root权限_360超级Root无法获取Root权限怎么处理?
  6. 爱尔兰DPC针对Facebook 5.33亿用户数据泄露事件开展调查
  7. 网页开发工具介绍,VS Code安装与使用和插件安装
  8. Accepting the Command of the Army
  9. 如何用Python制作一副扑克牌?有趣的案例!
  10. 数据库按照汉字拼音首字母排序