Test if an array-like value contains a search value.
var contains = require( '@stdlib/assert/contains' );Tests if val contains a search value. When val is a string, the function checks whether the characters of a search string are found in the input string.
var v = contains( 'Hello World', 'World' );
// returns trueWhen val is an array-like object, but not a string, the function checks whether the input value contains an element strictly equal to the specified search value.
var arr = [ null, NaN, 2, 'abc', {} ];
var v = contains( arr, NaN ); // NaNs are considered equal
// returns true
v = contains( arr, {} );
// returns false
v = contains( arr, 'ab' );
// returns falseSearch is case-sensitive.
var v = contains( 'Hello World', 'world' );
// returns falseTo start searching at a specified index, provide a position argument.
var v = contains( 'Hello World', 'Hello', 6 );
// returns false
v = contains( [ true, NaN, false ], true, 1 );
// returns falseIf not provided an array-like object, the function throws an error.
var v = contains( false, 'abc' );
// throws <TypeError>If not provided an integer-valued position argument, the function throws an error.
var v = contains( 'hello', 'e', 2.5 );
// throws <TypeError>- For
strings, the function is modeled after String.prototype.includes, part of the ECMAScript 6 specification. This function is different from a call toString.prototype.includes.callinsofar as type-checking is performed for all arguments. - The function does not distinguish between positive and negative zero.
- If
position < 0, the search is performed for the entire input array or string.
var contains = require( '@stdlib/assert/contains' );
var bool = contains( 'last man standing', 'stand' );
// returns true
bool = contains( [ 1, 2, 3, 4 ], 2 );
// returns true
bool = contains( 'presidential election', 'president' );
// returns true
bool = contains( [ NaN, 2, 3, 4 ], NaN );
// returns true
bool = contains( 'javaScript', 'js' );
// returns false
bool = contains( 'Hidden Treasures', '' );
// returns true