# Base > Base ndarray.
## Usage ```javascript var ns = require( '@stdlib/ndarray/base' ); ``` #### ns Base ndarray. ```javascript var o = ns; // returns {...} ```
- [`bind2vind( shape, strides, offset, order, idx, mode )`][@stdlib/ndarray/base/bind2vind]: convert a linear index in an underlying data buffer to a linear index in an array view. - [`broadcastArray( arr, shape )`][@stdlib/ndarray/base/broadcast-array]: broadcast an ndarray to a specified shape. - [`broadcastShapes( shapes )`][@stdlib/ndarray/base/broadcast-shapes]: broadcast array shapes to a single shape. - [`bufferCtors( dtype )`][@stdlib/ndarray/base/buffer-ctors]: ndarray data buffer constructors. - [`bufferDataTypeEnum( buffer )`][@stdlib/ndarray/base/buffer-dtype-enum]: return the data type enumeration constant of an ndarray data buffer. - [`bufferDataType( buffer )`][@stdlib/ndarray/base/buffer-dtype]: return the data type of an ndarray data buffer. - [`buffer( dtype, size )`][@stdlib/ndarray/base/buffer]: create a zero-filled contiguous linear ndarray data buffer. - [`bytesPerElement( dtype )`][@stdlib/ndarray/base/bytes-per-element]: return the number of bytes per element provided an underlying array data type. - [`clampIndex( idx, max )`][@stdlib/ndarray/base/clamp-index]: restrict an index to the interval `[0,max]`. - [`ndarray( dtype, buffer, shape, strides, offset, order )`][@stdlib/ndarray/base/ctor]: create a multidimensional array. - [`dtypeChar( dtype )`][@stdlib/ndarray/base/dtype-char]: return the single letter abbreviation for an underlying array data type. - [`dtypes2signatures( dtypes, nin, nout )`][@stdlib/ndarray/base/dtypes2signatures]: transform a list of array argument data types into a list of signatures. - [`ind( idx, max, mode )`][@stdlib/ndarray/base/ind]: return an index given an index mode. - [`ind2sub( shape, strides, offset, order, idx, mode )`][@stdlib/ndarray/base/ind2sub]: convert a linear index to an array of subscripts. - [`iterationOrder( strides )`][@stdlib/ndarray/base/iteration-order]: given a stride array, determine array iteration order. - [`maxViewBufferIndex( shape, strides, offset )`][@stdlib/ndarray/base/max-view-buffer-index]: compute the maximum linear index in an underlying data buffer accessible to an array view. - [`minViewBufferIndex( shape, strides, offset )`][@stdlib/ndarray/base/min-view-buffer-index]: compute the minimum linear index in an underlying data buffer accessible to an array view. - [`minmaxViewBufferIndex( shape, strides, offset )`][@stdlib/ndarray/base/minmax-view-buffer-index]: compute the minimum and maximum linear indices in an underlying data buffer which are accessible to an array view. - [`nonsingletonDimensions( shape )`][@stdlib/ndarray/base/nonsingleton-dimensions]: return the number of non-singleton dimensions. - [`numel( shape )`][@stdlib/ndarray/base/numel]: return the number of elements in an array. - [`serializeMetaData( x )`][@stdlib/ndarray/base/serialize-meta-data]: serialize ndarray meta data. - [`shape2strides( shape, order )`][@stdlib/ndarray/base/shape2strides]: generate a stride array from an array shape. - [`singletonDimensions( shape )`][@stdlib/ndarray/base/singleton-dimensions]: return the number of singleton dimensions. - [`strides2offset( shape, strides )`][@stdlib/ndarray/base/strides2offset]: determine the index offset which specifies the location of the first indexed value in a multidimensional array based on a stride array. - [`strides2order( strides )`][@stdlib/ndarray/base/strides2order]: determine the order of a multidimensional array based on a provided stride array. - [`sub2ind( shape, strides, offset, ...subscripts, mode )`][@stdlib/ndarray/base/sub2ind]: convert subscripts to a linear index. - [`ndarray2array( buffer, shape, strides, offset, order )`][@stdlib/ndarray/base/to-array]: convert an ndarray buffer to a generic array. - [`vind2bind( shape, strides, offset, order, idx, mode )`][@stdlib/ndarray/base/vind2bind]: convert a linear index in an array view to a linear index in an underlying data buffer. - [`wrapIndex( idx, max )`][@stdlib/ndarray/base/wrap-index]: wrap an index on the interval `[0,max]`.
The namespace contains the following sub-namespaces:
- [`assert`][@stdlib/ndarray/base/assert]: base ndarray assertion utilities.
## Examples ```javascript var objectKeys = require( '@stdlib/utils/keys' ); var ns = require( '@stdlib/ndarray/base' ); console.log( objectKeys( ns ) ); ```