# Index Modes > List of ndarray index modes.
## Usage ```javascript var modes = require( '@stdlib/ndarray/index-modes' ); ``` #### modes() Returns a list of ndarray index modes. ```javascript var out = modes(); // returns [ 'throw', 'clamp', 'wrap' ] ``` The output `array` contains the following modes: - `throw`: specifies that a function should throw an error when an index is outside a restricted interval. - `wrap`: specifies that a function should wrap around an index using modulo arithmetic. - `clamp`: specifies that a function should set an index less than `0` to `0` (minimum index) and set an index greater than a maximum index value to the maximum possible index.
## Examples ```javascript var indexOf = require( '@stdlib/utils/index-of' ); var modes = require( '@stdlib/ndarray/index-modes' ); var MODES = modes(); var bool; function isMode( str ) { if ( indexOf( MODES, str ) === -1 ) { return false; } return true; } bool = isMode( 'throw' ); // returns true bool = isMode( 'clamp' ); // returns true bool = isMode( 'wrap' ); // returns true bool = isMode( 'beep' ); // returns false ```