Node.js 환경에서 글로벌 객체에 접근하는 두 가지 주요 방법인 globalThis와 global을 비교해보자.

글로벌 객체란?

자바스크립트 환경에서 최상위 스코프를 제공하는 객체이다.

브라우저: window
Node.js: global

global 객체

Node.js 전용 환경

특징:

  • Node.js 내장 모듈 및 글로벌 변수 접근 가능
  • ECMAScript 표준에 포함되지 않음

globalThis 객체

모든 자바스크립트 환경 (브라우저, Node.js, 웹 워커 등)

특징:

  • ECMAScript 2020 (ES2020) 표준
  • 일관된 글로벌 객체 접근 방법 제공
  • 이식성 높은 코드 작성 가능 (모든 환경에서 일관된 접근 방식)

결론

가능하면 globalThis를 사용하여 코드의 이식성과 호환성을 높이면 좋을 것 같다.