Skip to content

Latest commit

 

History

History

index-of-same-value

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 

indexOfSameValue

Return the index of the first element which equals a provided search element according to the SameValue Algorithm.

Usage

var indexOfSameValue = require( '@stdlib/array/base/index-of-same-value' );

indexOfSameValue( x, searchElement, fromIndex )

Returns the index of the first element which equals a provided search element according to the SameValue Algorithm.

var x = [ 1, 2, 3, 4, 5, 6 ];

var idx = indexOfSameValue( x, 3, 0 );
// returns 2

If the function is unable to find an element which equals a provided search element, the function returns -1.

var x = [ 1, 2, 3, 4, 5, 6 ];

var idx = indexOfSameValue( x, 7, 0 );
// returns -1

To begin searching from specific index, provide a non-zero fromIndex argument.

var x = [ 1, 1, 2, 1, 2, 3, 3 ];

var idx = indexOfSameValue( x, 2, 3 );
// returns 4

If fromIndex is less than zero, the starting index is resolved relative to the last array element, with the last array element corresponding to fromIndex = -1.

var x = [ 1, 1, 2, 1, 2, 3, 3 ];

var idx = indexOfSameValue( x, 2, -4 );
// returns 4

Notes

  • The function performs a linear scan and returns immediately upon finding a match.
  • When searching for a search element, the function checks for equality using the SameValue Algorithm as specified in ECMAScript 5. As a consequence, NaN values are considered equal, and -0 and +0 are considered distinct.

Examples

var indexOfSameValue = require( '@stdlib/array/base/index-of-same-value' );

var x = [ 'foo', 'bar', 'beep', 'boop', 'foo', 'bar' ];

var idx = indexOfSameValue( x, 'beep', 0 );
// returns 2

idx = indexOfSameValue( x, 'bop', 0 );
// returns -1

idx = indexOfSameValue( x, 'foo', 1 );
// returns 4

idx = indexOfSameValue( x, 'foo', -4 );
// returns 4

idx = indexOfSameValue( x, 'foo', 5 );
// returns -1