什么是jQuery对象?

Phi*_*enn 8 jquery terminology definitions

JavaScript类重新定义了数组的意思,因为数组是一个具有.length属性和方法的对象,如.slice().join().

jQuery将jQuery对象定义为"Array like",因为它有一个length属性,但它没有某些类似的数组方法join().

如果我将jQuery对象定义为对象,并且忘记提及与数组有关的任何内容,我将如何定义它?除长度外还有哪些属性?

我猜所有的方法都是你在文档中看到的,远远超过了数组中的方法数量.

Šim*_*das 35

jQuery对象是类似数组的,这意味着它包含零个或多个索引(名称是从零开始的正整数的属性).除了这些索引之外,jQuery对象还包含以下属性:

  • length
  • context
  • selector

还有大约140个继承的方法(在jQuery.prototype对象上定义- 你可以做console.dir(jQuery.prototype)一个完整的列表...).

请注意,jQuery对象包含(或继承)Array方法(slice,substr,...).如果要在jQuery对象上执行这些方法,请使用call/ apply.


例如,如果页面上有3个TEXTAREA元素,则执行此操作:

var j = $('textarea');
Run Code Online (Sandbox Code Playgroud)

那么这个jjQuery对象将包含以下属性:

  • 0 - 引用第一个TEXTAREA元素
  • 1 - 引用第二个TEXTAREA元素
  • 2 - 引用第三个TEXTAREA元素
  • length - 是的 3
  • context- document对象的引用
  • selector - 是的 'textarea'
  • 加上所有那些继承的方法......