변수, 함수, 클래스와 같은 모든 식별자는 선언된 위치에 따라 참조할 수 있는 유효 범위가 결정된다. 이를 스코프라고 한다. 즉, 스코프는 식별자가 유효한 범위를 말한다.
함수에서 매개변수는 해당 함수 내부에서만 참조가 가능하다. 이것은 매개변수의 스코프가 함수 내부로 한정되기 때문이다.
function add(x, y) {
// 매개변수는 함수 몸체 내부에서만 참조할 수 있다.
// 즉, 매개변수의 스코프는 함수 몸체 내부이다.
console.log(x, y); // 2, 5
return x + y;
}
add(2, 5);
console.log(x, y); // ReferenceError : x is not defined