Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Q&A] var, let, const의 차이점은 무엇인가요? #34

Closed
lledellebell opened this issue Jun 2, 2023 Discussed in #33 · 1 comment
Closed

[Q&A] var, let, const의 차이점은 무엇인가요? #34

lledellebell opened this issue Jun 2, 2023 Discussed in #33 · 1 comment
Labels
Question 이 라벨을 사용하여 책이나 특정 챕터와 관련된 질문을 포함하는 이슈를 표시합니다. 질문을 쉽게 식별하고 처리할 수 있도록 도움을 줍니다. 변수

Comments

@lledellebell
Copy link
Contributor

Discussed in #33

Originally posted by salutBleu June 2, 2023
4장 변수의 선언

@lledellebell lledellebell added Question 이 라벨을 사용하여 책이나 특정 챕터와 관련된 질문을 포함하는 이슈를 표시합니다. 질문을 쉽게 식별하고 처리할 수 있도록 도움을 줍니다. 변수 labels Jun 2, 2023
@choidayeon
Copy link
Collaborator

var, let, const의 차이점

var
기본적으로 변수를 사용할 수 있는 위치. 전역 범위 혹은 함수 범위로 지정
재선언되고, 업데이트될 수 있다.

var키워드의 문제점

  • 변수 중복 선언 가능하여 예기치 못한 값을 반환할 수 있다.
  • 함수 외부에서 선언한 변수는 모두 전역변수로 된다.
  • 기존에 정의된 전역변수를 인식하지 못하고 바꿀수있다.

let
let으로 선언된 변수는 해당 블록 내에서만 사용가능합니다.
업데이트될수 있지만 재선언은 불가능하다.
변수가 범위 내에서만 존재하기 때문에 이전에 이미 사용한 적이 있는 변수명에 대해서 더이상 신경쓰지 않아도 된다.

let의 호이스팅
var와 마찬가지로 let 선언은 맨 위로 끌어올려지지만 undefined로 초기화되는 var와 다르게 let은 초기화 되지 않는다.
선언 이전에 let변수를 사용하려고 시도한다면 Reference Error(참조 오류)가 발생한다.

const
일정한 상수값 유지. let선언처럼 const선언도 선언된 블록 범위 내에서만 접근 가능하다.
업데이트도 재선언도 불가능하다. 단, 객체는 가능하다.

const의 호이스팅
let과 마찬가지로 맨위로 끌어올려지지만 초기화되지 않는다.

@lledellebell lledellebell changed the title var, let, const의 차이점은 무엇인가요? [Q&A] var, let, const의 차이점은 무엇인가요? Jun 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Question 이 라벨을 사용하여 책이나 특정 챕터와 관련된 질문을 포함하는 이슈를 표시합니다. 질문을 쉽게 식별하고 처리할 수 있도록 도움을 줍니다. 변수
Projects
Development

No branches or pull requests

2 participants