js判断全局环境

我们可能需要判断当前属于, window 环境, worker, 还有 node 环境等

可以使用如下代码进行判断, 拿到全局对象

js 复制代码
// The one and only way of getting global scope in all environments
// https://stackoverflow.com/q/3277182/1008999
var _global = typeof window === 'object' && window.window === window
  ? window : typeof self === 'object' && self.self === self
  ? self : typeof global === 'object' && global.global === global
  ? global
  : this

window环境下

js 复制代码
window.window === window  // true

node 环境下

js 复制代码
global.global === global // true

当然 node环境还有一个 globalThis


web worker 环境

js 复制代码
self.self === self // true
相关推荐
顾安r5 小时前
11.8 脚本网页 星际逃生
c语言·前端·javascript·flask
im_AMBER6 小时前
React 17
前端·javascript·笔记·学习·react.js·前端框架
一雨方知深秋6 小时前
2.fs模块对计算机硬盘进行读写操作(Promise进行封装)
javascript·node.js·promise·v8·cpython
顺凡8 小时前
删一个却少俩:Antd Tag 多节点同时消失的原因
前端·javascript·面试
前端大卫8 小时前
动态监听DOM元素高度变化
前端·javascript
Cxiaomu9 小时前
React Native App 图表绘制完整实现指南
javascript·react native·react.js
qq. 28040339849 小时前
vue介绍
前端·javascript·vue.js
Mr.Jessy9 小时前
Web APIs 学习第五天:日期对象与DOM节点
开发语言·前端·javascript·学习·html
速易达网络10 小时前
HTML<output>标签
javascript·css·css3
!win !11 小时前
前端跨标签页通信方案(上)
前端·javascript