Categories

jQuery.inArray()

Categories: Utilities

jQuery.inArray( value, array, [ fromIndex ] )Returns: Number

Description: Search for a specified value within an array and return its index (or -1 if not found).

  • jQuery.inArray( value, array, [ fromIndex ] )

    version added: 1.0

    value   The value to search for.

    array   An array through which to search.

    fromIndex   The index of the array at which to begin the search. The default is 0, which will search the whole array.

The $.inArray() method is similar to JavaScript's native .indexOf() method in that it returns -1 when it doesn't find a match. If the first element within the array matches value, $.inArray() returns 0.

Because JavaScript treats 0 as loosely equal to false (i.e. 0 == false, but 0 !== false), if we're checking for the presence of value within array, we need to check if it's not equal to (or greater than) -1.

  • Report the index of some elements in the array.

    HTML:
    
    <div>"John" found at <span></span></div>
    <div>4 found at <span></span></div>
    <div>"Karl" not found, so <span></span></div>
    <div>"Pete" is in the array, but not at or after index 2, so <span></span></div>
    CSS:
    
      div { color:blue; }
      span { color:red; }
    
    Code:
    var arr = [ 4, "Pete", 8, "John" ];
    var $spans = $("span");
    $spans.eq(0).text(jQuery.inArray("John", arr));
    $spans.eq(1).text(jQuery.inArray(4, arr));
    $spans.eq(2).text(jQuery.inArray("Karl", arr));
    $spans.eq(3).text(jQuery.inArray("Pete", arr, 2));