자바스크립트/자바스크립트란?
실습 과제
위르겐
2022. 7. 21. 10:09
let b = 1;
function hi () {
const a = 1;
let b = 100;
b++;
console.log(a,b);
}
//console.log(a);
console.log(b);
hi();
console.log(b);
위 코드를 실행해보고
주석을 해제한 후 왜 에러가 나는지 봐보자.
위 코드를 실행해보니
다음과 같은 결과가 출력됐다.
전역변수에 이미 선언된 변수가 있다하더라고
함수안에서 같은 변수를 새로 선언하고 할당하면
초기화되어 함수안에서만 사용할 수 있는 새로운 변수가 생성된다.
그리하여
console.log(b);
hi();
console.log(b);
첫째 콘솔로그와 둘째 콘솔로그는
전역변수에 있는 값이 출력되고
hi() 함수를 실행했을 땐
그 안에서 할당된 변수가 출력되는것
당연하게도
a라는 변수는 함수안에서만 할당됐기 때문에
함수밖에서 사용하면 안된다.
그래서 주석을 해제하면 오류가 난다.
반응형