Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

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