From 26a09f08cf1ed43c640879f23fdad56c5c9282f7 Mon Sep 17 00:00:00 2001 From: HelenHuang <LinHuang@pollex.com.tw> Date: 星期四, 09 六月 2022 15:02:38 +0800 Subject: [PATCH] TODO#139884 Banner 1 文案調整 --- PAMapp/node_modules/core-js/internals/is-constructor.js | 23 +++++++++++++++++------ 1 files changed, 17 insertions(+), 6 deletions(-) diff --git a/PAMapp/node_modules/core-js/internals/is-constructor.js b/PAMapp/node_modules/core-js/internals/is-constructor.js index 8fe595e..7a28d990 100644 --- a/PAMapp/node_modules/core-js/internals/is-constructor.js +++ b/PAMapp/node_modules/core-js/internals/is-constructor.js @@ -1,35 +1,46 @@ +var uncurryThis = require('../internals/function-uncurry-this'); var fails = require('../internals/fails'); var isCallable = require('../internals/is-callable'); var classof = require('../internals/classof'); var getBuiltIn = require('../internals/get-built-in'); var inspectSource = require('../internals/inspect-source'); +var noop = function () { /* empty */ }; var empty = []; var construct = getBuiltIn('Reflect', 'construct'); var constructorRegExp = /^\s*(?:class|function)\b/; -var exec = constructorRegExp.exec; -var INCORRECT_TO_STRING = !constructorRegExp.exec(function () { /* empty */ }); +var exec = uncurryThis(constructorRegExp.exec); +var INCORRECT_TO_STRING = !constructorRegExp.exec(noop); -var isConstructorModern = function (argument) { +var isConstructorModern = function isConstructor(argument) { if (!isCallable(argument)) return false; try { - construct(Object, empty, argument); + construct(noop, empty, argument); return true; } catch (error) { return false; } }; -var isConstructorLegacy = function (argument) { +var isConstructorLegacy = function isConstructor(argument) { if (!isCallable(argument)) return false; switch (classof(argument)) { case 'AsyncFunction': case 'GeneratorFunction': case 'AsyncGeneratorFunction': return false; + } + try { // we can't check .prototype since constructors produced by .bind haven't it - } return INCORRECT_TO_STRING || !!exec.call(constructorRegExp, inspectSource(argument)); + // `Function#toString` throws on some built-it function in some legacy engines + // (for example, `DOMQuad` and similar in FF41-) + return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument)); + } catch (error) { + return true; + } }; +isConstructorLegacy.sham = true; + // `IsConstructor` abstract operation // https://tc39.es/ecma262/#sec-isconstructor module.exports = !construct || fails(function () { -- Gitblit v1.8.0