代码之家  ›  专栏  ›  技术社区  ›  harpo Binary Worrier

jquery$实际返回什么?

  •  105
  • harpo Binary Worrier  · 技术社区  · 16 年前

    我已经阅读了jquery文档,尽管您应该关注什么 通过 函数,我看不到关于它的实际内容的任何信息 收益率 .

    特别是,它是否总是返回一个数组,即使只找到一个元素?当找不到任何内容时是否返回空值?这是在哪里记录的?

    我知道jquery方法可以应用于返回值,但是如果我只想直接使用返回值呢?

    9 回复  |  直到 11 年前
        1
  •  69
  •   Ian Robinson    16 年前

    Rick Strahl's description :

    jquery对象:包装集: 选择器返回已知的jquery对象 作为“包裹集”,这是一个 包含所有 选定的DOM元素。你可以 像一个 数组或访问单个元素 通过索引器($(SEL)[0]用于 例子)。更重要的是,你可以 还对应用jquery函数 所有选定的元素。

    关于不退货:

    它总是返回一个数组吗?它是否返回空值?

    你总是得到同样的东西,无论它是否有任何内容是问题。通常,您可以使用.val()(例如,$('.myelem').val())来检查这一点。

        2
  •  23
  •   John Millikin    16 年前

    它不返回数组,而是返回jquery对象。jquery对象包含所有特殊的jquery方法。

    它从不返回空值或其他类型。如果找到一个元素,jquery对象将只有一个子元素。如果找不到元素,jquery对象将为空。

        3
  •  4
  •   Andrew Hare    16 年前

    jquery函数(即 $ “)始终在每个实例中返回jquery对象。

        4
  •  4
  •   TM. Randy Simon    16 年前

    正如另一位回答者提到的,它 总是 返回jquery对象。

    这个对象总是包含一个元素数组(即使它是一个空数组,或者只有一个对象的数组)。

    如果要将返回的对象“直接”用作普通元素,可以执行以下操作之一:

    $('selector')[0] // element
    $('selector').get(0) // element
    $('selector').length // number of elements in the array
    
        5
  •  3
  •   d512    13 年前

    jQuery documentation :

    jquery对象本身的行为与数组非常相似;它具有长度属性,对象中的元素可以通过其数字索引[0]到[length-1]访问。注意,jquery对象实际上不是一个javascript数组对象,因此它没有真正数组对象(如join())的所有方法。

        6
  •  2
  •   Stefan Kendall    16 年前

    事实上,$()总是返回jquery函数,因此可以明智地将jquery函数调用链接起来。

        7
  •  0
  •   eKek0    16 年前

    根据Firebug,它返回与选择器匹配的对象数组。但是这个数组是一个jquery对象,比一个简单的数组有更多的方法。

        8
  •  0
  •   jrsconfitto    16 年前

    Their documentation 列出一些可以与“$”一起使用的核心呼叫及其返回的内容

        9
  •  0
  •   Eric    11 年前

    jquery选择器机制

    $(“.”.“)是jquery选择器,用于选择匹配的元素。

    返回值

    它总是返回一个类似jquery对象的数组,该数组具有“length”属性,

    对返回的jquery对象调用方法

    可以对对象调用jquery方法,并将其应用于那些选定的元素,

    按索引访问原始元素

    所选元素存储为对象的属性,其属性名是从0开始的索引编号,
    因此可以通过索引访问,从0开始,
    在获取原始元素之后,您可以将其视为按“document.getElementXXX()”获取。

    将原始元素包装到jquery对象

    获取原始元素后,可以将其包装为jquery对象,
    打电话给$(originale)
    然后可以对包装的对象调用jquery方法,