변수가 무엇인지 아주 간단하게 다룬 글 : https://byeongil00.tistory.com/23
변수와 상수
변수란 ? 모든 프로그래밍 언어는 기억하고 싶은 값을 메모리에 저장하고, 저장된 값을 읽어 들여 '재사용'하기 위해 변수라는 메커니즘을 이용한다. 변수의 5가지 주요 개념 변수 이름 : 저장된
byeongil00.tistory.com
선언, 참조, 할당 이 이해가 잘 안되고 var, let, const의 쓰임새를 정확히 이해하지못해 다시 한번 정리하는 글.
이번 글에서는 JavaScript에서 변수를 선언 하는 3가지 방법과
자주 쓰는 단어의 개념들을 조금 더 자세히 설명 해볼 예정이다.
변수를 사용하면서, 코딩을 하면서 할당, 선언, 참조라는 말을 자주 들었는데 정확히 무슨 의미인지 무슨 뜻인지 알아보자.
// 변수의 5가지 개념
// 변수 이름 : 저장된 값의 고유 이름
// 변수 값 : 변수에 저장된 값
// 변수 할당 : 변수에 값을 저장하는 행위 ( 변수에 데이터 저장 )
// 변수 선언 : 변수를 사용하기 위해 컴퓨터에 알리는 행위 ( 변수 생성 )
// 변수 참조 : 변수에 할당된 값을 읽어오는 것 ( 변수를 사용 )
이렇게 글로만 보면 이해가 잘 안된다. 예시를 보면서 살펴보자!
var myvar = "hello"
console.log(myvar)
// 변수 이름 : myvar , 변수 값 : hello , 변수 할당 : var myvar = "hello" ,
// 변수 선언 : var myvar , 변수 참조 : console.log(myvar)
이렇게 보면 아주 쉽게 이해가 될 거다!
이제 변수를 변수를 선언할 수 있는 3가지 방법 ( var, let, const ) 에 대해 알아보자!
var myvar = "hello"
console.log(myvar) // hello
myvar라는 변수를 선언해 "hello" 라는 변수 값을 할당 해
console.log 를 통해 myvar를 참조해준거다.
여기서 myvar라는 변수를 다른 변수 값으로 재선언 해주면 어떻게 될까 ??
var myvar = "hello";
var myvar = "hello1";
console.log(myvar); // hello1
마지막에 재선언한 hello1이 출력 되는 걸 볼 수 있다. ( 재선언 가능 )
let 과 const 의 경우는 ??
let mylet = "hello"
console.log(mylet) // hello
const myconst = "hello"
console.log(myconst) // hello
선언의 경우 당연히 문제가 없다. 재선언 할 경우에는 ?
let mylet = "hello"
let mylet = "hello1"
console.log(mylet) // 오류 발생
const myconst = "hello"
const myconst = "hello1"
console.log(myconst) // 오류 발생
둘다 오류가 발생한다.. ( let, const 재선언 불가능 )
정리 해보자면 var 는 재선언 가능 let, const 재선언 불가능이다 재할당의 경우에는 ?
var myvar = "hello"
myvar = "hello1"
console.log(myvar) // hello1
let mylet = "hello"
mylet = "hello1"
console.log(myvar) // hello1
const myconst = "hello"
myconst = "hello1"
console.log(myvar) // 오류 발생
var , let 의 경우 hello1이 출력 되었고, const의 경우 오류가 발생하였다 ( var, let 재할당 가능, const 재할당 불가능 )
var : 재선언, 재할당 가능 / let : 재선언 불가능, 재할당 가능 / const : 재선언, 재할당 불가능
* 절대 바뀌면 안되는 데이터 값을 선언할때는 const를 사용하면 된다.
코드를 짜면서 변수를 선언할때 뭘 써야할지 애매하다면 글을 다시 읽어보면서 정하는게 좋을 듯 하다!
'Javascript' 카테고리의 다른 글
javascript 에서 enum 사용 (0) | 2023.07.25 |
---|---|
데이터 타입 ( 숫자, 문자 ) 정리 (0) | 2023.06.09 |
JavaScript 의 역사와 특징 (0) | 2023.06.09 |
데이터 타입과 형 변환(typeof????) (0) | 2023.05.23 |
변수(var, let, const) (0) | 2023.05.23 |