# isSymbol > Test if a value is a [symbol][mdn-symbol].
## Usage ```javascript var isSymbol = require( '@stdlib/assert/is-symbol' ); ``` #### isSymbol( value ) Tests if a value is a [symbol][mdn-symbol]. ```javascript var Symbol = require( '@stdlib/symbol/ctor' ); var bool = isSymbol( Symbol( 'beep' ) ); // returns true bool = isSymbol( Object( Symbol( 'beep' ) ) ); // returns true ``` #### isSymbol.isPrimitive( value ) Tests if a `value` is a primitive [symbol][mdn-symbol]. ```javascript var Symbol = require( '@stdlib/symbol/ctor' ); var bool = isSymbol.isPrimitive( Symbol( 'beep' ) ); // returns true bool = isSymbol.isPrimitive( Object( Symbol( 'boop' ) ) ); // returns false ``` #### isSymbol.isObject( value ) Tests if a `value` is a [`Symbol`][mdn-symbol] object. ```javascript var Symbol = require( '@stdlib/symbol/ctor' ); var bool = isSymbol.isObject( Symbol( 'beep' ) ); // returns false bool = isSymbol.isObject( Object( Symbol( 'boop' ) ) ); // returns true ```
## Examples ```javascript var hasSymbolSupport = require( '@stdlib/assert/has-symbol-support' ); var Symbol = require( '@stdlib/symbol/ctor' ); var isSymbol = require( '@stdlib/assert/is-symbol' ); var bool; if ( hasSymbolSupport() ) { bool = isSymbol( Symbol( 'beep' ) ); // returns true } else { console.log( 'Environment does not support symbols.' ); } bool = isSymbol( 'beep' ); // returns false bool = isSymbol( {} ); // returns false bool = isSymbol( [] ); // returns false bool = isSymbol( null ); // returns false bool = isSymbol( void 0 ); // returns false bool = isSymbol( true ); // returns false bool = isSymbol( function foo() {} ); // returns false ```