JavaScript 프로그램의 경우 프로그램이 실행되기 시작하면 JavaScript 인터프리터는 프로그램에서 사용할 전역 개체를 초기화합니다. JavaScript 자체에서 제공하는 전역 개체의 기능은 다음과 같습니다.
1. 전역 개체에는 일반적으로 사용되는 속성 값이 있습니다. 정의되지 않음, Infinity 및 NaN 등이 있습니다.
2. 전역 개체에는 일반적으로 사용되는 속성 개체가 있습니다. 예를 들어 Math, JSON 및 Number 개체는 모두 전역 개체의 속성입니다.
3. 전역 개체는 호출을 위한 일부 전역 기능을 제공합니다. 예를 들어 isNaN(), isFinite(), parsInt(), eval() 등이 있습니다.
4. 전역 객체는 전역 생성자, 즉 전역 클래스를 제공합니다. 예를 들어 Date(), RegExp(), String(), Object(), Array() 등이 있습니다.
JS 전역 개체 외에도 브라우저 측에서 실행되는 JavaScript 프로그램을 위한 또 다른 전역 개체인 window가 있습니다. 창 전역 개체는 현재 창 및 페이지와 관련된 많은 속성과 메서드를 제공합니다. 이러한 브라우저 관련 전역 속성 및 메서드 외에도 창 개체는 JS 전역 개체를 캡슐화하고 JS 전역 개체의 속성과 인터페이스를 노출합니다. 따라서 브라우저 측 JavaScript를 프로그래밍할 때는 창에만 신경 쓰면 됩니다. 전역 개체입니다.
이를 위해 JavaScript 프로그램에서 이것이 어떤 함수에도 속하지 않으면 JS 전역 개체를 참조하고, 브라우저에서 실행되는 JS 프로그램인 경우 창 전역 개체를 참조합니다.
이것이 함수에 속하면 함수를 호출하는 객체를 나타냅니다. 이 경우 함수가 특정 클래스의 메서드가 아닌 일반적인 함수인 경우 이를 참조할 수 있는 두 가지 가능성이 있습니다.
1. ECMAScript 3 표준과 ECMAScript 5 표준의 non-strict 모드에서는 전역 객체를 나타냅니다.
2. ECMAScript 5 표준의 엄격 모드에서는 정의되지 않음을 나타냅니다.
이 기능에 따르면 다음 코드를 사용하여 현재 엄격 모드에 있는지 확인할 수 있습니다.
JavaScript 프로그램에서 전역 변수가 생성되면 전역 변수는 전역 개체의 속성이 됩니다.
실험
x = "테스트";
console.log(a.x);//새로 생성된 전역 변수 값에 액세스