Javascript jQuery-.first()与[0]元素
使用jQuery3.1.1,为什么这两种方法的结果不同Javascript jQuery-.first()与[0]元素,javascript,jquery,arrays,Javascript,Jquery,Arrays,使用jQuery3.1.1,为什么这两种方法的结果不同 $('dd[data-something]').first().innerText; ^返回未定义的 ^返回有效数据 数组的第0个元素不也是.first()元素吗 编辑:谢谢大家,我知道了,jQuery对象与DOM元素。正如调试器在我删除之前清楚地显示的那样:)这是一个明确的信号,该结束了。因为返回一个jQuery对象,该对象环绕在集合中的第一个原始DOM元素周围(该元素没有innerText属性,但有那个方便的方法),并且[0]直接访问
$('dd[data-something]').first().innerText;
^返回未定义的
^返回有效数据
数组的第0个元素不也是.first()元素吗
编辑:谢谢大家,我知道了,jQuery对象与DOM元素。正如调试器在我删除之前清楚地显示的那样:)这是一个明确的信号,该结束了。因为返回一个jQuery对象,该对象环绕在集合中的第一个原始DOM元素周围(该元素没有innerText
属性,但有那个方便的方法),并且[0]
直接访问原始DOM元素(在大多数浏览器上都有innerText
属性)。将返回一个jQuery对象,该对象与普通JavaScript对象不同,不能与本机JavaScript API一起使用,以下是官方文档中的qoute
.first()方法从该集合中的第一个元素构造一个新的jQuery对象
第二个(索引零)将返回一个JavaScript对象,这几乎就像使用
因此,如果您想从jQuery获得文本使用,那么它将起作用
$('dd[data-something]').first().text('new text'); // this will change the text
从头到尾通读是值得的。这只需要大约一个小时,最多两个小时,而且它会立即回报你。请注意,$('dd[data something]')。first()[0]
与$('dd[data something]'))[0]
以及$('dd[data something]')。first().first()[0]
相同。此外,$('dd[data something]')。first()
与jQuery('dd[data something]:eq(0)
相同。这可能有助于您理解何时处理jQuery对象或普通元素,希望:-|
$('dd[data-something]').first().text('new text'); // this will change the text