Show More
Commit Description:
fix wrong merge
Commit Description:
fix wrong merge
References:
File last commit:
Show/Diff file:
Action:
node_modules/is-symbol/index.js
| 35 lines
| 767 B
| application/javascript
| JavascriptLexer
|
r789 | 'use strict'; | |||
var toStr = Object.prototype.toString; | ||||
var hasSymbols = require('has-symbols')(); | ||||
if (hasSymbols) { | ||||
var symToStr = Symbol.prototype.toString; | ||||
var symStringRegex = /^Symbol\(.*\)$/; | ||||
var isSymbolObject = function isRealSymbolObject(value) { | ||||
if (typeof value.valueOf() !== 'symbol') { | ||||
return false; | ||||
} | ||||
return symStringRegex.test(symToStr.call(value)); | ||||
}; | ||||
module.exports = function isSymbol(value) { | ||||
if (typeof value === 'symbol') { | ||||
return true; | ||||
} | ||||
if (toStr.call(value) !== '[object Symbol]') { | ||||
return false; | ||||
} | ||||
try { | ||||
return isSymbolObject(value); | ||||
} catch (e) { | ||||
return false; | ||||
} | ||||
}; | ||||
} else { | ||||
module.exports = function isSymbol(value) { | ||||
// this environment does not support Symbols. | ||||
return false && value; | ||||
}; | ||||
} | ||||