자바스크립트란 참 희한한 언어인것 같아요 ㅋㅋ

유효범위에 관해서 한가지 제가 몰랐던 것~

만약 선언되지 않은 변수를 사용하게 되었을 경우

ex)

function add(x, y){

sum = x + y;              //sum 은 선언되지 않았을 경우

}

이런 경우에 sum 변수는 선언 된 적이 없기때문에 에러가 날 것 같지만

자바스크립트에서는 기본적으로 컴파일 시 선언을 한답니다.

그런데 문제는 무조건 전역변수로 간주하기 때문에 메모리에 불필요한 낭비가 ^^ 될 수 도 있고 값이

꼬이는 문제가 생길 수 있으니 돌아간다고 무시하지 말고

꼭 var 선언을 하시기를~

 

function a(){

  var i = 0;

 

  for(j = 0; j < 10; j++){
    var sum = 0;
    sum += j;
  }

  alert(sum);

}

이런 경우에도 alert(sum); 은 동작한답니다.

지역변수의 경우 함수 내부의 지역변수와 전역변수는 유효범위가 있으나

함수 내부에서의 블락단위의 변수 유효범위는 존재하지 않는다는 !!

'개발 > Java Script' 카테고리의 다른 글

자바스크립트 객체란?  (0) 2008.11.20
자바스크립트 with  (0) 2008.11.20
자바스크립트 null과 undefined  (0) 2008.11.20
자바스크립트 for/in 문 활용법  (1) 2008.11.20
자바스크립트 history  (0) 2008.10.29
블로그 이미지

쭈니후니

개발자로서 공부와 낚시를 좋아하는 한사람으로서의 추억을 담을 블로그입니다.

,