《学习 ES11:ECMAScript 2020 中的全局对象 globalThis 详解》

阅读时长 3 分钟读完

学习 ES11:ECMAScript 2020 中的全局对象 globalThis 详解

ECMAScript 2020(或者被称为 ES11)是 JavaScript 语言的最新版本,发布于 2020 年 6 月。本文介绍其中一个新特性:全局对象 globalThis。

是什么?

全局对象 globalThis 是一个新的 ECMAScript 全局对象,可以在任何现代浏览器和 Node.js 中使用。它提供了一种标准的方式,用于在不同的环境中获取全局对象,无论是在 web 浏览器还是在服务器上的 node 程序中。

为什么需要 globalThis?

在 JavaScript 中,全局对象通常使用 window 关键字表示(在 web 浏览器中)或者使用 global 关键字表示(在 node 环境中)。这意味着在不同的环境中使用不同的全局关键字,不便于代码的复用和移植性。而 globalThis 提供了一个通用的方式来获取全局对象,可以在任何环境中使用,使得代码更加具有通用性和可移植性。

下面是一个示例,可以演示在不同的环境中如何使用 globalThis:

如何使用?

使用 globalThis 很简单,直接在脚本中使用即可:

这将会在控制台中输出全局对象。

下面是一个使用 globalThis 的示例,将会演示如何在不同的环境中使用 globalThis 和 node-fetch 模块来获取网络数据:

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

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

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

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

总结

全局对象 globalThis 是 ECMAScript 2020 的一个新特性,可以在多个环境中通用地获取全局对象。使用 globalThis 可以提高代码的移植性和复用性,特别是在跨平台的开发中。同时,我们还演示了如何使用 globalThis 和 node-fetch 模块来获取网络数据,展示了它的实际用途。

你可以在现代浏览器和 Node.js 中安全地使用 globalThis,它已经被广泛支持。这个新特性的 API 很简单,但却是今后编写可移植性和可伸缩性代码的基础。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/649e89b848841e9894b0e96e

纠错
反馈