반응형
Javascript(자바스크립트)
1. 자바스크립트의 변수종류(var, const, let)
- var 변수는 ES6이전부터 사용한 문법입니다.
- const, let변수는 ES6부터 추가된 문법입니다.
1.1 변수종류별 재선언, 재할당 여부
- var 변수는 재선언, 재할당 모두 가능합니다.
- const 변수는 재선언, 재할당 모두 불가능합니다.
- let 변수는 재할당만 가능합니다.
1.1.1 변수 재선언
동일한 이름을 가진 변수를 다시 선언하는 것을 말합니다.
var fruit = 'apple' var fruit = 'orange'
1.1.1 변수 재할당
이미 선언된 변수에 다른 값을 삽입하는 것을 말합니다.
var fruit = 'apple' fruit = 'orange'
2. 변수의 범위(Scope)
- 변수의 유효범위를 말합니다.
- var 변수는 함수(funtion) 스코프를 가집니다.
- const, let 변수는 블룩(block) 스코프를 가집니다.
2.1 함수 범위(funtion scope)
- 함수( ) 내부에서만 유효한 스코프를 의미합니다.
function scopeTest(){
if(true){ // 1번째 if문
var num = 10;
}
if(true){ // 2번째 if문
console.log(num);
}
}
scopeTest();
- var변수는 함수내부에서 선언된 전역변수처럼, 2번째 if문에서 num을 호출해도 정상적으로 10이 출력됩니다.
- 즉 함수내부에서라면 블록{ } 내,외부 어디든지 참조할 수 있습니다.
2.2 블록 범위(block scope)
- 중괄호{ } 내부에서만 유효한 스코프를 의미합니다.
function scopeTest(){
if(true){ // 1번째 if문
}
if(true){ // 2번째 if문
let num = 10;
console.log(num);
}
}
scopeTest();
- const, let변수는 함수 범위와는 다르게 2번째 if문처럼 선언과 호출이 같은 블록{ }에 존재해야합니다.
- 즉 블록{ } 내부 또는 하위 블록에서 참조할 수 있습니다.
반응형
'웹(Web)개발 > 5. Javascript' 카테고리의 다른 글
5. Javascript Ajax 통신 (0) | 2020.10.12 |
---|---|
4. Javascript 함수 (0) | 2020.10.12 |
3. Javascript 비교, 분기, 반복 (0) | 2020.10.12 |
2. Javascript 연산자, 타입 (0) | 2020.10.12 |