swc/crates/swc_bundler/tests/.cache/untrusted/6f1f3773e0ee97456706e203acab6a27589ad220.ts
2021-11-09 20:42:49 +09:00

27 lines
639 B
TypeScript

// Loaded from https://raw.githubusercontent.com/lodash/lodash/master/isSymbol.js
import getTag from './.internal/getTag.js'
/**
* Checks if `value` is classified as a `Symbol` primitive or object.
*
* @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) {
const type = typeof value
return type == 'symbol' || (type === 'object' && value != null && getTag(value) == '[object Symbol]')
}
export default isSymbol