From 9185d8a8e49ebed7492eadb5f6187872b2d7d5ed Mon Sep 17 00:00:00 2001 From: JounQin Date: Tue, 31 Aug 2021 02:45:16 +0000 Subject: [PATCH] [Refactor] use `globalThis` if available --- .eslintrc | 4 ++++ index.js | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/.eslintrc b/.eslintrc index 344c5b6..34a6262 100644 --- a/.eslintrc +++ b/.eslintrc @@ -3,6 +3,10 @@ "extends": "@ljharb", + "globals": { + "globalThis": false + }, + "rules": { "max-statements-per-line": [2, { "max": 2 }] }, diff --git a/index.js b/index.js index e141a89..a5e6bee 100644 --- a/index.js +++ b/index.js @@ -7,6 +7,7 @@ var callBound = require('call-bind/callBound'); var $toString = callBound('Object.prototype.toString'); var hasToStringTag = require('has-tostringtag/shams')(); +var g = typeof globalThis === 'undefined' ? global : globalThis; var typedArrays = availableTypedArrays(); var $indexOf = callBound('Array.prototype.indexOf', true) || function indexOf(array, value) { @@ -23,7 +24,7 @@ var gOPD = require('es-abstract/helpers/getOwnPropertyDescriptor'); var getPrototypeOf = Object.getPrototypeOf; // require('getprototypeof'); if (hasToStringTag && gOPD && getPrototypeOf) { forEach(typedArrays, function (typedArray) { - var arr = new global[typedArray](); + var arr = new g[typedArray](); if (Symbol.toStringTag in arr) { var proto = getPrototypeOf(arr); var descriptor = gOPD(proto, Symbol.toStringTag);