javascript

이장훈·2022년 2월 17일
0

자바스크립트는 맨 처음 함수를 훑기때문에
함수의 선언 위치가 어디에있든 모두 적용할 수 있다. 프로그램에는 영향이 없다.

scope : 자바스크립트에서 변수를 선언하고 사용할 때, 변수가 정의되는 범위 (변수의 유효범위)
지역변수, 로컬변수 : 한 함수 안에서느 사용할 수 있는 변수
전역 변수, 글로벌 변수 : 스크립트 전체에서 사용할 수 있는 변수

지역변수 : 함수 안에서 선언하고, 함수 안에서만 사용

전역변수 : 함수 밖이나, var 예약어를 사용하지 않고 선언한 변수

var 와 호이스팅

호이스팅 hoisting : 변수의 선언과 할당을 분리해서 선언 부분의 해석을 스코프의 가장 위쪽으로 끌어올림

let과 const

var 예약어를 사용하는 변수는 함수 영역의 스코프를 가지고, 재할당과 재선언이 가능하다. 그래서 잘못사용하면 문제가 발생할 수 있다.

let
var 가 없는 경우 전역 변수가 되거나, 실수로 사용하는 변수를 재선언 혹은 재 할당되는 경우가 생긴다.
var는 함수 영역(레벨)스코프지만, let과 const는 블록 영역의 스코프이다.

let으로 선언한 변수는 선언한 블록 {}에서만 유효하고 블록 밖에서는 유효하지 않습니다.

let으로 선언한 변수는 재할당 할 수 있지만 변수를 재선언할 수는 없다.

profile
개발자가 꿈입니다.

0개의 댓글