1일1끄적

자바스크립트 입문, 함수-3 함수 스코프 개념 이해 본문

개발/javascript

자바스크립트 입문, 함수-3 함수 스코프 개념 이해

inkor 2021. 12. 11. 15:46

※함수 스코프란?

스코프(Scope)의 사전적의미는 '범위'이며, 여기에서는 변수 또는 함수의 유효 범위를 가리킨다.

 

-지역 변수?

스코프 영역에서 선언한 변수를 카리킨다.

스코프 영역에서만 사용할 수 있다

 

-지역 함수?

스코프 영역에서 선언한 함수를 가리킨다.

스코프영역에서만 사용할 수 있다.

 

스코프를 이해하기 위해 지역 변수(Local Variables)와 전역 변수(Global Variables)의 개념과 차이를 

살펴봐야한다

 

 

○ 전역 변수와 지역 변수의 개념과 차이

전역 변수는 자바스크립트 어디에서든 사용할 수 있는 변수이고 

지역 변수는 함수 스코프에서만 사용할 수 있는 변수이다.

var 변수명; // 전역변수

function 함수명(){
	var 변수명; // 지역변수
}




<script>
  var score = 10; // 전역변수 데이터

  function scopeEx(){
      var score = 50; // 함수 스코프에서는 지역 변수 데이터를 가져온다

      alert(score);
  }

scopeEx(); // 50

alert(score); // 10

</script>

 

○전역 함수와 지역 함수의 차이

전역 함수는 자바스크립트 어디에서든 사용할 수 있는 함수이고, 지역 함수는 함수 스코프에서만

사용할 수 있는 함수이다. 

function 함수명1(){
 	자바스크립트 코드; 
}  // 전역함수

function 함수명2(){
	function 함수명3(){
    	자바스크립트 코드; // 지역함수
    }
}

 

○전역과 지역을 나누는 이유

프로그램을 개발할 때 전역(Global)과 지역(Local)을 나누면 충돌을 피할 수 있다. 

프로젝트의 규모가 크면 여러 명의 개발자가 투입 되는데, 만약 같은 이름의 전역 변수나 전역 함수를 사용하면

충돌이 발생한다. 또한 다른 개발자가 이미 개발해 놓은 라이브러리나 플러그인의 변수 또는 함수의 이름과

자신이 사용하는 변수나 함수의 이름이 같은 경우에도 충돌이 발생할 수 있다. 

 

○ 즉시 실행 함수 

함수 선언과 동시에 함수를 호출할 수 있다.

(function(){
	자바스크립트 코드;
 }());
 
 (function(){
  	var 변수명;  // 지역 변수
    
    function 함수명(){  // 지역 함수
    	자바스크립트 코드;
     }
 }());

-출처: 자바스크립트+제이쿼리입문 책 중

http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9791163030034&orderClick=LAG&Kc=

Comments