Show More
Commit Description:
submission report
Commit Description:
submission report
References:
File last commit:
Show/Diff file:
Action:
node_modules/es-abstract/2018/thisSymbolValue.js
| 19 lines
| 520 B
| application/javascript
| JavascriptLexer
|
r789 | 'use strict'; | |||
var callBound = require('../helpers/callBound'); | ||||
var $SymbolValueOf = callBound('Symbol.prototype.valueOf', true); | ||||
var Type = require('./Type'); | ||||
// https://ecma-international.org/ecma-262/9.0/#sec-thissymbolvalue | ||||
module.exports = function thisSymbolValue(value) { | ||||
if (!$SymbolValueOf) { | ||||
throw new SyntaxError('Symbols are not supported; thisSymbolValue requires that `value` be a Symbol or a Symbol object'); | ||||
} | ||||
if (Type(value) === 'Symbol') { | ||||
return value; | ||||
} | ||||
return $SymbolValueOf(value); | ||||
}; | ||||