JavaScript 네임스페이스 생성: "var FOO = FOO || {}" 이해
JavaScript 영역에서 자주 접하는 특이한 패턴 소스 파일의 시작 부분에서 조사할 가치가 있습니다: var FOO = FOO || {};. 처음에는 그 목적이 파악하기 어려운 것처럼 보일 수 있지만 || {} 구문은 네임스페이스 설정에서 중요한 역할을 합니다.
JavaScript의 네임스페이스는 변수와 함수가 상주할 수 있는 명명된 객체 역할을 하여 전역 객체의 바람직하지 않은 오염을 방지합니다. 이 패턴을 사용하면 동일한 네임스페이스를 공유하는 여러 파일이 로드되는 순서에 관계없이 조화롭게 상호 작용할 수 있습니다.
예를 들어,
var MY_NAMESPACE = MY_NAMESPACE || {}; MY_NAMESPACE.func1 = {};
및
var MY_NAMESPACE = MY_NAMESPACE || {}; MY_NAMESPACE.func2 = {};여기서 공유 네임스페이스는 어떤 파일에 관계없이 func1과 func2가 모두 MY_NAMESPACE 내에서 올바르게 정의되도록 보장합니다. 먼저 로드됩니다. 초기 파일은 MY_NAMESPACE 객체를 생성하고 후속 파일에서는 이를 확장합니다.