자바스크립트란 참 희한한 언어인것 같아요 ㅋㅋ
유효범위에 관해서 한가지 제가 몰랐던 것~
만약 선언되지 않은 변수를 사용하게 되었을 경우
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 |