>웹 프론트엔드 >JS 튜토리얼 >JavaScript의 전역 객체

JavaScript의 전역 객체

Susan Sarandon
Susan Sarandon원래의
2024-11-15 12:27:021052검색

The Global Object in JavaScript

JavaScript에서 전역 개체는 모든 개발자의 핵심 개념입니다. 여기에는 프로그램에서 전역적으로 액세스 가능한 모든 변수, 함수 및 개체가 포함됩니다. 이 게시물에서는 전역 개체가 정확히 무엇인지, 다양한 환경에서 어떻게 작동하는지, 그리고 이를 올바르게 관리하는 것이 효과적이고 깨끗하며 유지 관리 가능한 코드에 중요한 이유를 설명하려고 합니다.

글로벌 객체란 무엇인가요?

글로벌 객체는 자바스크립트가 실행되는 환경으로 이해될 수 있습니다. 모든 전역 변수와 함수의 컨테이너입니다. 브라우저에서 전역 개체는 window _인 반면 Node.js에서는 _global입니다. 전역 변수나 함수 외부에서 선언된 함수는 전역 개체를 통해 액세스할 수 있습니다.

브라우저

var a = 1;
console.log(window.a); // 1

Node.js

var a = 1;
console.log(global.a); // 1

전역 범위 및 변수

전역적으로 선언된 변수는 전역 객체에 첨부됩니다. 여러 스크립트가 동일한 전역 공간을 공유하는 경우 충돌이 발생할 수 있습니다.

var을 사용하여 전역 범위에서 동일한 이름을 가진 변수를 선언하는 두 개의 서로 다른 스크립트가 있다고 상상해 보세요.

스크립트 1

var message = "Hello!";
console.log(message) // Hello!

스크립트 2

var message = "Goodbye!";
console.log(message); // Goodbye!

두 스크립트가 모두 실행되면 둘 다 var을 사용하여 전역 범위에서 메시지 변수를 선언합니다. 두 번째 스크립트는 두 변수가 모두 동일한 전역 공간(브라우저의 경우 window)에 저장되어 있으므로 스크립트 1에서 설정한 메시지 값을 덮어씁니다. 이로 인해 출력 차이가 발생합니다.

전역 변수의 사용을 제한하여 이를 방지하는 것이 가장 좋습니다. 범위를 가능한 한 로컬로 유지하십시오.

globalThiswindow

최근까지 개발자는 전역 개체에 액세스하려면 브라우저의 창과 Node.js의 전역을 사용해야 했습니다. 그러나 ES2020에서는 여러 환경에서 전역 개체에 액세스하는 통합된 방법인 globalThis를 도입했습니다. globalThis는 전역 개체에 대한 액세스를 표준화합니다.

전역 함수 및 객체

전역 개체에는 console, setTimeout _and _setInterval, JSONMath. 전역 개체를 직접 참조하지 않고도 전역적으로 액세스할 수 있습니다.

그럼 깔끔하고 효과적인 코드를 유지하면서 모범 사례를 유지하려면 어떻게 해야 할까요? 전역 개체는 유용하지만 너무 많이 의존하면 문제가 발생할 수 있습니다. 여기에 몇 가지 조언이 있습니다: 이름 충돌과 의도하지 않은 부작용의 위험을 줄이기 위해 전역 변수(var) 사용을 피하고 대신 함수 내에서 지역 변수를 사용하십시오. let과 const를 사용하세요.

브라우저의 전역 개체

브라우저에서 창 개체는 단순한 전역 컨테이너 그 이상입니다. 또한 DOM(문서), 브라우저 API(가져오기) 및 기타 웹 관련 개체를 보유합니다. 이로 인해 창은 모든 브라우저 기반 JavaScript 실행의 중심이 됩니다.

Node.js의 전역 객체

Node.js에서 전역 개체는 전역이지만 window가 브라우저에서 수행하는 방식처럼 자동으로 변수를 추가하지 않습니다. Node.js는 전역 네임스페이스를 깔끔하고 구조적으로 유지하기 위해 모듈 사용을 권장합니다.

결론

전역 개체는 JavaScript가 전역 변수, 함수 및 개체를 처리하는 방법의 핵심입니다. 다양한 환경에서 작동하는 방식을 이해하고, 아껴서 사용하고, 모범 사례를 따르면 깔끔하고 유지 관리 가능한 코드를 작성하는 데 도움이 됩니다. let 또는 const를 사용하여 전역 변수를 최소화하면 문제를 방지하고 JavaScript 기술을 향상시킬 수 있습니다.

출처:

전역_객체

전역 객체

위 내용은 JavaScript의 전역 객체의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.