first
This commit is contained in:
19
node_modules/core-js/internals/symbol-constructor-detection.js
generated
vendored
Normal file
19
node_modules/core-js/internals/symbol-constructor-detection.js
generated
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
'use strict';
|
||||
/* eslint-disable es/no-symbol -- required for testing */
|
||||
var V8_VERSION = require('../internals/engine-v8-version');
|
||||
var fails = require('../internals/fails');
|
||||
var global = require('../internals/global');
|
||||
|
||||
var $String = global.String;
|
||||
|
||||
// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
|
||||
module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
|
||||
var symbol = Symbol();
|
||||
// Chrome 38 Symbol has incorrect toString conversion
|
||||
// `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
|
||||
// nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,
|
||||
// of course, fail.
|
||||
return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||
|
||||
// Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
|
||||
!Symbol.sham && V8_VERSION && V8_VERSION < 41;
|
||||
});
|
Reference in New Issue
Block a user