Symbol

    Symbol factory.

    Usage

    var Symbol = require( '@stdlib/symbol/ctor' );
    

    Symbol( [description] )

    Returns a Symbol primitive.

    var s = Symbol();
    // returns <symbol>
    

    To aid debugging, provide a symbol description.

    var s = Symbol( 'beep' );
    // returns <symbol>
    

    Notes

    • Unlike conventional constructors, the function does not support the new keyword.
    • The function is only supported in environments which support symbols. In non-supporting environments, the value is undefined.

    Examples

    var hasSymbolSupport = require( '@stdlib/assert/has-symbol-support' );
    var Symbol = require( '@stdlib/symbol/ctor' );
    
    var s;
    
    if ( hasSymbolSupport() ) {
        s = Symbol( 'beep' );
    
        // Print the value type:
        console.log( typeof s );
        // => 'symbol'
    
        // Serialize the symbol as a string:
        console.log( s.toString() );
        // => 'Symbol(beep)'
    
        // Test symbol equality:
        console.log( s === Symbol( 'beep' ) );
        // => false
    } else {
        console.log( 'Environment does not support symbols.' );
    }