scope와 closure

HeeJin.log·2021년 8월 17일
0

 🗃지식 상자

목록 보기
10/13
post-thumbnail

📌 scope

Scope는 유효범위로 변수가 어느 범위까지 참조되는 지를 뜻한다.

const a = 1;     // -> Global Scope
{
	const b= 2;    // -> Local Scope
    console.log(a,b);    // 1 ,2
    }
    console.log(a,b)

📌 closure

closure는 함수가 선언된 환경의 스코프를 기억하여 함수가 스코프 밖에서 실행될 때에도 기억한 스코프에 접근할 수 있게 만드는 문법이다.

function handleGreeting(name){
	const greeting = "Hello,";
    
    return function (){
    	console.log(greeting + name);
        };
        }
        
        const world = handleGreeting("world");
        const heejin = handleGreeting("heejin");
        
        world();     
        heejin();

world나 heejin 함수를 실행할때, greeting 함수도 실행된다.

0개의 댓글