理解 ES12 中的全局变量 globalThis

在 ES12 中,新增了一个全局变量 globalThis,它用于在任何 JavaScript 环境中访问全局对象。在浏览器中,全局对象是 window,在 Node.js 中,全局对象是 global,在 Web Workers 中,全局对象是 self

为什么需要 globalThis?

在不同的 JavaScript 环境中,访问全局对象的方式是不同的。例如,在浏览器中,我们可以使用 window,但在 Node.js 中,我们需要使用 global。这给开发者带来了困扰,因为他们需要在不同的环境中编写不同的代码。

为了解决这个问题,ES12 引入了全局变量 globalThis,它提供了一种通用的方式来访问全局对象,无论在哪种 JavaScript 环境中都可以使用。

如何使用 globalThis?

使用 globalThis 非常简单,只需要在代码中使用它即可。例如,在浏览器中,我们可以这样访问全局对象:

----- ------------ - -----------

在 Node.js 中,我们也可以这样访问全局对象:

----- ------------ - -----------

示例代码

下面是一个使用 globalThis 的示例代码,它在不同的 JavaScript 环境中都可以运行:

----- ------------ - -----------

-------------------------- -- -
  ------------------- ---------
-- ------

总结

在 ES12 中,全局变量 globalThis 提供了一种通用的方式来访问全局对象,无论在哪种 JavaScript 环境中都可以使用。这使得开发者可以编写通用的代码,而不需要在不同的环境中编写不同的代码。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/662f2a45d3423812e4d200f8