CoffeeScript에서 전용 var 문이 없다는 것은 모든 변수가 암시적으로 로컬로 선언된다는 의미입니다. 이렇게 하면 JavaScript로 컴파일하는 동안 전역 네임스페이스로의 실수로 누출되는 것을 방지할 수 있습니다.
전역 변수를 정의하려면 전역 변수를 전역 개체에 속성으로 할당해야 합니다.
브라우저에서 전역 개체는 창 개체입니다. foo라는 전역 변수를 만들려면 다음과 같이 작성합니다.
window.foo = 'baz'
Node.js에서는 전역 개체를 창으로 사용할 수 없습니다. . 대신, 내보내기 개체에 전역 변수를 할당해야 합니다.
exports.foo = 'baz'
CoffeeScript 문서에서는 내보내기 여부에 따라 적절한 전역 개체를 결정하기 위해 루트 변수를 사용할 것을 제안합니다. 정의되어 있는지(Node.js의 경우) 또는 정의되어 있지 않은지(브라우저 환경을 의미함):
root = exports ? this root.foo = 'baz'
이것은 삼항 표현식은 내보내기가 정의된 경우 내보내기에 루트를 할당하고, 그렇지 않으면 이(Node.js의 전역 컨텍스트 또는 브라우저의 창)에 루트를 할당합니다.
root = exports ? this root.foo = -> 'Hello World'
이 코드는 Node.js(내보내기를 통해) 또는 브라우저(창을 통해) 전역 객체에서 foo라는 전역 함수를 선언합니다.
위 내용은 CoffeeScript에서 전역 변수를 어떻게 정의합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!