javascript - 기본 작성법

조혜령·2021년 12월 20일
0

Basic Javascript

목록 보기
3/4

;

JS는 세미콜론 즉 ; 으로 끝낸다. (필수는 아니지만 ; 으로 끝내는 것이 좋다.)

a = 5; b = 6; c = a + b;
a = 5;
b = 6;
c = a + b;

이렇게 한 줄로 나타낼 수도 있고 보기 편하게 나눠서 나타낼 수도 있다. 둘은 같은 코드이다.


공백

let person = "Hege";
let person="Hege";

공백이 존재하고 없지만 둘은 같다.
JS는 공백을 무시한다.
연산자( = + - * / ) 주위에 공백을 넣는 것이 좋다.


줄 길이와 줄 바꿈

document.getElementById("demo").innerHTML =
"Hello Dolly!";

80자 보다 긴 코드라면 이렇게 연산자 뒤쪽을 줄 바꿈 해주는 것이 좋다.


코드블럭




버튼 클릭 전

버튼 클릭 후 codeBlockPrint function이 적용된 모습이다.


키워드

var

중복 선언 즉 초기화가 가능하다. 이 경우 마지막에 지정된 값이 나타나진다. 선언한 변수의 값 변경도 가능하다.


기존에 선언해둔 변수의 존재를 까먹고, 값을 재할당하게 되는 등의 실수가 발생하기 쉽다.
function 안에서 선언된 변수는 그 함수 안에서만 선언된 상태로 존재한다.
--> function 즉 함수를 제외한 다른 ex) if문, for문 등의 코드블럭에서 선언된 변수는 전역변수로 사용된다.
--> 함수 레벨 스코프임.

let

중복 선언은 불가능하지만 선언된 변수의 값 변경은 가능하다.




중복 선언 시에는 오류가 8번째 코드에서 발생한 것을 알 수 있다.

const

const는 상수를 선언해준다.
처음에 선언 및 초기화하고 나면 다른 값을 입력할 수 없다. --> 오류 발생하기 때문
변수를 새로 선언해주는 방법 뿐이다.

letconst함수 내부는 물론, if문이나 for문 등의 코드 블럭{ ... } 에서 선언된 변수도 지역변수로 취급된다.
--> 블록 레벨 스코프임.

변수 호이스팅이란??

JS는 코드를 실행하기 전, 일종의 '코드 평가 과정'을 거치는데, 이 때 '변수 선언문'을 미리 실행두기 때문에 뒤에서 선언된 변수도 앞의 코드에서 참조할 수 있게 된다.


--> var는 변수 호이스팅 발생


예시는 let으로만 되어있지만, const도 마찬가지이다.
let과 const의 변수 호이스팅 과정은 코드 실행 전에는 변수 선언만을 해두고, 초기화는 코드 실행 과정에서 변수 선언문을 만났을 때 수행한다.
--> 호이스팅이 발생하기는 하지만, 값을 참조할 수 없어서 호이스팅이 발생하지 않는 것처럼 보이는 것!!
이처럼 변수의 선언과 초기화 사이에 일시적으로 변수 값을 참조할 수 없는 구간을 TDZ(Temporal Dead Zone)이라고 한다.

var, let, const 중간정리

  1. const를 최우선으로 사용한다.
  2. let은 변수 값을 변경해줄 때 위주로 사용한다.
  3. var는 ES6 이후부터, 즉 특별한 경우가 아닌 이상 사용하지 않는 것이 좋다.
profile
HR velog

0개의 댓글