자바스크립트 스코프는 코드 내에서 변수 및 함수에 적용되는 유효 범위를 나타내는 개념입니다. 스코프는 변수와 함수가 어디서 정의되고 어디에서 접근 가능한지를 결정합니다.
전역 스코프는 코드의 최상단에 위치하며, 모든 변수와 함수가 접근할 수 있는 범위를 나타냅니다. 전역 스코프에서 선언된 변수와 함수는 어디서든 참조할 수 있습니다.
var globalVariable = "전역 변수";
function globalFunction() {
console.log(globalVariable);
}
globalFunction(); // "전역 변수"
JavaScript지역 스코프는 특정 함수 내에서 변수가 선언될 때 해당 변수가 접근 가능한 범위를 의미합니다. 함수 내에서 선언된 변수는 함수 외부에서 접근할 수 없습니다.
function localScopeExample() {
var localVariable = "지역 변수";
console.log(localVariable);
}
localScopeExample(); // "지역 변수"
console.log(localVariable); // 에러: localVariable은 정의되지 않음
JavaScriptES6에서 let과 const 키워드를 도입함으로써 블록 스코프가 등장했습니다. 블록 스코프는 중괄호 {}로 감싸진 코드 블록 내에서만 유효하며, 외부에서는 접근할 수 없습니다.
if (true) {
let blockVariable = "블록 변수";
console.log(blockVariable);
}
console.log(blockVariable); // 에러: blockVariable은 정의되지 않음
JavaScript자바스크립트에서는 스코프 체인을 통해 변수나 함수를 찾습니다. 현재 스코프에서 찾지 못하면 상위 스코프로 이동하여 검색합니다.
var outerVariable = "외부 변수";
function outerFunction() {
var innerVariable = "내부 변수";
function innerFunction() {
console.log(outerVariable); // 외부 변수 접근 가능
console.log(innerVariable); // 내부 변수 접근 가능
}
innerFunction();
}
outerFunction();
JavaScript아래 예제에서 innerFunction은 outerVariable에 접근할 수 있는 클로저를 형성합니다. outerFunction이 호출된 이후에도 closureExample을 실행하면, 여전히 외부 변수에 접근할 수 있어 “외부 변수”가 출력됩니다.
function outerFunction() {
var outerVariable = "외부 변수";
function innerFunction() {
console.log(outerVariable);
}
return innerFunction;
}
var closureExample = outerFunction();
closureExample(); // "외부 변수"
JavaScript자바스크립트 스코프는 코드 내에서 변수와 함수의 유효 범위를 결정하는 중요한 개념입니다. 스코프를 이해하는 것은 변수 및 함수의 접근성을 이해하고 코드를 효과적으로 구성하는 데 도움이 됩니다.
소개 자바에서 Set은 중복을 허용하지 않는 데이터 집합을 의미합니다. List와 달리 동일한 요소를 여러 번…
해시(Hash)란 무엇인가? 해시(Hash)는 자바 프로그래밍에서 빠르고 효율적인 데이터 저장 및 검색을 위한 핵심적인 개념입니다. 이…
LinkedList란 무엇인가? LinkedList는 자바에서 유용하게 사용되는 자료구조 중 하나로, 연결 리스트 방식을 이용하여 데이터를 관리하는…
ArrayList란 무엇인가? ArrayList는 자바에서 가장 널리 사용되는 컬렉션 중 하나로, 가변 크기의 배열을 구현한 클래스입니다.…
제네릭(Generic)이란? 자바 제네릭은 코드의 재사용성을 높이고 타입 안전성을 보장하는 중요한 개념입니다. 이 블로그 글에서는 자바…