15 lines
507 B
JavaScript
15 lines
507 B
JavaScript
|
'use strict';
|
||
|
var getBuiltIn = require('../internals/get-built-in');
|
||
|
var isCallable = require('../internals/is-callable');
|
||
|
var isPrototypeOf = require('../internals/object-is-prototype-of');
|
||
|
var USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');
|
||
|
|
||
|
var $Object = Object;
|
||
|
|
||
|
module.exports = USE_SYMBOL_AS_UID ? function (it) {
|
||
|
return typeof it == 'symbol';
|
||
|
} : function (it) {
|
||
|
var $Symbol = getBuiltIn('Symbol');
|
||
|
return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));
|
||
|
};
|