개념을 이해한다는것은 바로 용어를 정확히 이해하고 설명할수있다는 것이다.
용어에대한 정확한 이해는 정확한 커뮤티케이션을 가능케 한다.
5.1 값
표현식이 평가되어 생성된 결과를 말한다.
var sum = 10 + 20;
// 변수 10 + 20 이 평가되어 생성된 숫자 값 30이 할당된다.
5.2 리터럴
리터럴은 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법을 말한다.
3 // 숫자도 리터럴이다. -> 3을 기술하면 자바스크립트엔진은 이를 평가해 숫자 3을 생성한다.
'Hello' "World" // 문자리터럴
true false // 불리언리터럴
null // null리터럴
undefined // undefined 리터럴
{ name: 'Lee' , address: 'seoul' } // 객체 리터럴
[ 1, 2, 3 ] // 배열 리터럴
function() {} // 함수 리터럴
5.3 -4 표현식과 문
표현식 : 값으로 평가될수있는 문이다. 리터럴도 값이므로 표현식
문 : 프로그램을 구성하는 기본 단위이차 최소 실행단위
//리터럴 표현식
10
//식별자 표션힉
sum
person.name
arr[1]
//연산자 표현식
10 + 20
//함수/메서드 호출 표현식
square()
--> 문
//변수 선언문
var x;
// 할당문
x = 5;
//함수 선언문
function foo() {}
//조건문
if(x > 1) {console.log(x);}
5.5 세미콜론과 세미콜론 자동 삽입 기능
세미콜론은 문의 종료를 나타낸다
자바스크립트엔진은 세미콜론으로 문이 종료한 위치를 파악하고 순차적으로 하나씩 문을 실행한다.
세미콜론은 생략이 가능하다. 자바스크립트 엔진이 자동삽입기능을 제공하기때문이다.
하지만 세미콜론 사용을 권장하는 분위기므로 되도록 붙이도록 하자
5.6 표현식인 문과 표현식이 아닌문
문을 실행하면 결과값은 언제나 undefined를 출력한다.
var foo = 10; // 변수선언문 undefined 출력
if (true) { }; // 조건문 undefined 출력
100 + foo; // 표현식 문 110 출력
그렇다면 undefined를 출력하는 값이라면 표현식, 즉 값으로 표현되지 않았구나 라고 생각할수있다.
'Book > 모던 자바스크립트 Deep Dive' 카테고리의 다른 글
8. 제어문 (1) | 2024.09.27 |
---|---|
7. 연산자 (0) | 2024.09.24 |
6. 데이터타입 (2) | 2024.09.22 |
4. 변수 (0) | 2024.09.22 |
[모던자바스크립트 Deep Dive] 자바스크립트란? (2) | 2023.08.13 |