JavaScript 获取顶层对象

JavaScript About 510 words

说明

顶层对象,在浏览器环境指的是window对象,在Node指的是global对象。

Web中,可以通过windowself或者frames取到全局对象,但是在Web Workers中,只有self可以。

  • 浏览器里面,顶层对象是window,但NodeWeb Worker没有window
  • 浏览器和Web Worker里面,self也指向顶层对象,但是Node没有self
  • Node里面,顶层对象是global,但其他环境都不支持。

this

全局环境中,this会返回顶层对象。但是,Node.js模块中this返回的是当前模块,ES6模块中this返回的是undefined

globalThis

ES2020标准。所有流行的浏览器,包括Chrome 71+Firefox 65+Safari 12.1+,都已经支持globalThis获取顶层对象这项功能。也可以在Node.js 12+中使用它。

相关文档:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/globalThis

Views: 1,715 · Posted: 2022-07-02

————        END        ————

Give me a Star, Thanks:)

https://github.com/fendoudebb/LiteNote

扫描下方二维码关注公众号和小程序↓↓↓

扫描下方二维码关注公众号和小程序↓↓↓


Today On History
Browsing Refresh