hey_mi
heymi 스터디기록
2024.03.07

1. let

- 블로 레벨 스코프 / 함수 레벨 스코프로 나뉜다.

1) 함수 레벨 스코프

- 함수 내에서 선언된 변수는 함수 내에서만 유효하며, 함수 외부에서는 참조할 수 없다.

- 함수 내부에서 선언한 변수는 지역 변수이며 함수 외부에서 선언한 변수는 모두 전역 변수인다.

2) 블록 레벨 스코프

- 블록 내 (if문 , for문) 내에서 선언된 변수는 코드 블록 내에서만 유효하며, 코드 블록 외부에서는 참조할수 없다.


전역변수 : 어느 위치에서든 호출하면 사용가능

지역변수 : 특정 구역 내에서 생성되어 그 구영에서만 사용가능


3) 변수 중복 선언 금지

- var키워드로는 동일한 이름을 갖는 변수를 중복으로 선언할 수 있다

- let 키워드로는 동리한 이름을 갖는 변수를 중복해서 선언할 수 없다, ( 중복 선언 시 문법 에러 발생)

4) 호이스팅

- var이나 function을 호이스팅이라 한다.

var키워드는 선언문 이전에 참조 하여도 에러 발생이 안됨 / let 키워드로 선언된 변수를 선언문 이전에 참조하면 에러가 발생된다.

- 선언단계 : 변수를 실행 변수 객체에 등록한다

- 초기단계 : 변수, 객체에 등록된 변수를 위한 공간을 메모리에 확보한다.

- 할당 단계 : 초기화된 변수에 실제 값을 할당한다.

5) const

- 상수를 위해 사용한다. / 블록 레벨 스코프를 갖는다.

- let 은 재 할당이 자유로우나 const는 재할당이 금지됨

- const는 선언과 동시에 할당이 이루어져야 한다. 이후 선언 시 에러 발생 됨

총정리

변수 선언에는 기본적으로 const를 사용하고 / let은 재할당이 필요한 경우에 한정해 사용하기 객체의 재할당하는 경우는 const를 사용하여 재할당을 방지해주는 것이 안전하다.

heymi 스터디기록
의 다른 카테고리
0
👍0
👏0
🤔
댓글 작성