Determine a value's type.
var typeOf = require( '@stdlib/utils/type-of' );
Returns a value's type.
var str = typeOf( 'a' );
// returns 'string'
str = typeOf( 5 );
// returns 'number'
description | value | type | notes |
---|---|---|---|
string | 'beep' |
'string' |
|
number | 5 |
'number' |
|
NaN | NaN |
'number' |
|
infinity | +infinity /-infinity |
'number' |
|
boolean | true /false |
'boolean' |
|
null | null |
'null' |
|
undefined | undefined |
'undefined' |
|
array | ['beep', 5] |
'array' |
|
object | {'foo': 'bar'} |
'object' |
|
function | function (){} |
'function' |
|
symbol | Symbol() |
'symbol' |
ES2015 |
regexp | /./ |
'regexp' |
Android 4.1+ |
String | new String('beep') |
'string' |
|
Number | new Number(5) |
'number' |
|
Boolean | new Boolean(false) |
'boolean' |
|
Object | new Object() |
'object' |
|
Array | new Array() |
'array' |
|
Int8Array | new Int8Array() |
'int8array' |
|
Uint8Array | new Uint8Array() |
'uint8array' |
|
Uint8ClampedArray | new Uint8ClampedArray() |
'uint8clampedarray' |
|
Int16Array | new Int16Array() |
'int16array' |
|
Uint16Array | new Uint16Array() |
'uint16array' |
|
Int32Array | new Int32Array() |
'int32array' |
|
Uint32Array | new Uint32Array() |
'uint32array' |
|
Float32Array | new Float32Array() |
'float32array' |
|
Float64Array | new Float64Array() |
'float64array' |
|
ArrayBuffer | new ArrayBuffer() |
'arraybuffer' |
|
Buffer | new Buffer() |
'buffer' |
Node.js |
Date | new Date() |
'date' |
|
RegExp | new RegExp('.') |
'regexp' |
Android 4.1+ |
Function | new Function('x', 'return x') |
'function' |
|
Map | new Map() |
'map' |
ES2015 |
WeakMap | new WeakMap() |
'weakmap' |
ES2015 |
Set | new Set() |
'set' |
ES2015 |
WeakSet | new WeakSet() |
'weakset' |
ES2015 |
Error | new Error() |
'error' |
|
TypeError | new TypeError() |
'typeerror' |
|
SyntaxError | new SyntaxError() |
'syntaxerror' |
|
ReferenceError | new ReferenceError() |
'referenceerror' |
|
URIError | new URIError() |
'urierror' |
|
RangeError | new RangeError() |
'rangeerror' |
|
EvalError | new EvalError() |
'evalerror' |
|
Math | Math |
'math' |
|
JSON | JSON |
'json' |
IE8+ |
arguments | (function(){return arguments;})() |
'arguments' |
IE9+ |
custom constructor | new Beep() |
'beep' |
|
anonymous constructor | new (function(){})() |
'' |
var Float32Array = require( '@stdlib/array/float32' );
var Float64Array = require( '@stdlib/array/float64' );
var Int8Array = require( '@stdlib/array/int8' );
var Int16Array = require( '@stdlib/array/int16' );
var Int32Array = require( '@stdlib/array/int32' );
var Uint8Array = require( '@stdlib/array/uint8' );
var Uint8ClampedArray = require( '@stdlib/array/uint8c' );
var Uint16Array = require( '@stdlib/array/uint16' );
var Uint32Array = require( '@stdlib/array/uint32' );
var ArrayBuffer = require( '@stdlib/array/buffer' );
var Symbol = require( '@stdlib/symbol/ctor' );
var typeOf = require( '@stdlib/utils/type-of' );
var str = typeOf( 'a' );
// returns 'string'
str = typeOf( 5 );
// returns 'number'
str = typeOf( NaN );
// returns 'number'
str = typeOf( Infinity );
// returns 'number'
str = typeOf( true );
// returns 'boolean'
str = typeOf( false );
// returns 'boolean'
str = typeOf( void 0 );
// returns 'undefined'
str = typeOf( null );
// returns 'null'
str = typeOf( [] );
// returns 'array'
str = typeOf( {} );
// returns 'object'
str = typeOf( function noop() {} );
// returns 'function'
str = typeOf( new Map() );
// returns 'map'
str = typeOf( new WeakMap() );
// returns 'weakmap'
str = typeOf( new Set() );
// returns 'set'
str = typeOf( new WeakSet() );
// returns 'weakset'
str = typeOf( Symbol( 'beep' ) );
// returns 'symbol'
str = typeOf( new Error( 'beep' ) );
// returns 'error'
str = typeOf( new TypeError( 'beep' ) );
// returns 'typeerror'
str = typeOf( new SyntaxError( 'beep' ) );
// returns 'syntaxerror'
str = typeOf( new ReferenceError( 'beep' ) );
// returns 'referenceerror'
str = typeOf( new URIError( 'beep' ) );
// returns 'urierror'
str = typeOf( new EvalError( 'beep' ) );
// returns 'evalerror'
str = typeOf( new RangeError( 'beep' ) );
// returns 'rangeerror'
str = typeOf( new Date() );
// returns 'date'
str = typeOf( /./ );
// returns 'regexp'
str = typeOf( Math );
// returns 'math'
str = typeOf( JSON );
// returns 'json'
str = typeOf( new Int8Array( 10 ) );
// returns 'int8array'
str = typeOf( new Uint8Array( 10 ) );
// returns 'uint8array'
str = typeOf( new Int16Array( 10 ) );
// returns 'int16array'
str = typeOf( new Uint16Array( 10 ) );
// returns 'uint16array'
str = typeOf( new Int32Array( 10 ) );
// returns 'int32array'
str = typeOf( new Uint32Array( 10 ) );
// returns 'uint32array'
str = typeOf( new Float32Array( 10 ) );
// returns 'float32array'
str = typeOf( new Float64Array( 10 ) );
// returns 'float64array'
str = typeOf( new ArrayBuffer( 10 ) );
// returns 'arraybuffer'
function Person1() {
return this;
}
str = typeOf( new Person1() );
// returns 'person1'
var Person2 = function () {
return this;
};
str = typeOf( new Person2() );
// returns ''
@stdlib/utils/constructor-name
: determine the name of a value's constructor.@stdlib/utils/native-class
: determine the specification defined classification of an object.