스코프

 

스코프는 자바스크립트를 포함한 모든 프로그래밍 언어의 기본적이며 중요한 개념이다.

함수의 매개변수는 함수 몸체 내부에서만 참조할 수 있고 함수 몸체 외부에서는 참조가 불가능하다

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

 

 

변수는 코드의 가장 바깥 영역뿐 아니라 코드 블록이나 함수 몸체 내에서도 선언 가능. 이때 코드 블록이나 함수는 중첩이될 수있다.

 

var var1 = 1;  //전역변수

if(true){
    var var2 = 2;
    if(true){
        var var3 = 3;
    };
};

function foo(){
    var var4 = 4;
    function bar(){
        var var5 = 5;
    };
};

console.log(var1);
console.log(var2);
console.log(var3);
//함수 내부에서 선언된 변수는 함수내부에서만 참조가 가능하다.
console.log(var4); //ReferenceError
console.log(var5); // ReferenceError

 

 

함수 내부에서 선언된 변수는 함수내부에서만 참조가 가능하다.

 

var x = "global";

function foo2(){
    var x = "local";
    console.log(x);
};
foo2(); //local
console.log(x); //global

 

 

 

 

 

'WEB > JS' 카테고리의 다른 글

[JS] 프로퍼티 어트리뷰트  (0) 2023.11.27
[JS] let, const키워드와 블록 레벨 스코프  (1) 2023.11.27
[JS] recursive // callback  (2) 2023.11.25
[JS] 함수  (1) 2023.11.25
[JS] Object & method  (1) 2023.11.20

+ Recent posts