@limetech/lime-elements
Version:
32 lines (27 loc) • 740 B
JavaScript
;
var isObject = require('./isObject-B6Osvvqp.js');
var isObjectLike = require('./isObjectLike-Dlpn-j-1.js');
/** `Object#toString` result references. */
var symbolTag = '[object Symbol]';
/**
* Checks if `value` is classified as a `Symbol` primitive or object.
*
* @static
* @memberOf _
* @since 4.0.0
* @category Lang
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
* @example
*
* _.isSymbol(Symbol.iterator);
* // => true
*
* _.isSymbol('abc');
* // => false
*/
function isSymbol(value) {
return typeof value == 'symbol' ||
(isObjectLike.isObjectLike(value) && isObject.baseGetTag(value) == symbolTag);
}
exports.isSymbol = isSymbol;