반응형
Chapter5 - 표현식과 문
개념을 이해한다는 것은 용어를 정확히 이해하고 설명할 수 있다는 것
5.1 값
- 값이란 표현식(expression)이 평가되어 생성된 결과
- 변수에 값이 할당됨
5.2 리터럴(literal)
- 리터럴은 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법
- 예시
3
- 여기서 3은 숫자 3이 아닌 숫자 리터럴
5.3 표현식(expression)
표현식이 평가되면 새로운 값을 생성하거나 기존 값 참조
값으로 평가될수 있는 문은 모두 표현식
// 리터럴 표현식 10 'Hello' // 식별자 표현식(선언이 이미 존재한다는 가정) sum person.name arr[1] // 연산자 표현식 10 + 20 sum = 10 sum !== 14 // 함수/메서드 호출 표현식(선언이 이미 존재한다는 가정) square() person.getName()
5.4 문(statement)
프로그램을 구성하는 기본 단위이자 최소 실행 단위이며 여러 토큰으로 구성
토큰(token)은 문법적인 의미를 갖고 더이상 나눌수 없는 코드의 기본 요소
선언문, 할당문, 함수 선언문, 조건문, 반복문 등이 존재
// 변수 선언문 var x; // 할당문 x = 5; // 함수 선언문 function foo () { } // 조건문 if (x > 1) { console.log(x); } // 반복문 for(var i = 0; i < 2; i++) { console.log(i); }
5.5 세미콜론과 세미콜론 자동 삽입 기능
- 세미콜론은 문의 종료를 의미
- 코드블록 뒤에는 일반적으로 붙이지 않음
- 자바스크립트는 세미콜론 자동 삽입 기능(ASI)이 있기 때문에 생략이 가능하지만 간혹 의도와는 다르게 작동하는 경우가 존재
- 자바스크립트의 리팩토링을 도와주는 ESLint에서도 세미콜론을 기본으로 설정하고 있는 것을 보면 통일성 있게 사용을 권장
5.6 표현식인 문과 표현식이 아닌 문
- 구별하는 가장 간단한 방법은 변수에 할당해 보는 것
- 표현식이 아닌 문 / 값으로 평가될 수 없는 문
// 변수 선언문은 표현식이 아닌 문 var x; // 할당문은 그 자체가 표현식이지만 완전한 문 x = 100;
- 표현식인 문
// 표현식이 아닌 문은 값처럼 사용 불가능 var foo = var x; // SyntaxError
반응형
'개인 공부 > 자바스크립트 공부' 카테고리의 다른 글
[자바스크립트] 모던 자바스크립트 DeepDive 공부 #7 (0) | 2021.05.11 |
---|---|
[자바스크립트] 모던 자바스크립트 DeepDive 공부 #6 (0) | 2021.05.10 |
[자바스크립트] 모던 자바스크립트 DeepDive 공부 #4 (0) | 2021.05.08 |
[자바스크립트] 모던 자바스크립트 DeepDive 공부 #3 (0) | 2021.05.07 |
[자바스크립트] 모던 자바스크립트 DeepDive 공부 #2 (0) | 2021.05.06 |