-
모던 자바스크립트 Deep Dive - 표현식과 문JavaScript 2021. 9. 16. 18:58
keyword [ 표현식 , 문 ]
값 : 식이 평가되어 생성된 결과
리터럴 : 사람이 이해할 수 있는 문자 or 약속된 기호를 사용해 값을 생성하는 표기법
자바스크립트 엔진은 런타임 시점에 리터럴을 평가해 값을 생성한다.
표현식
표현식 : 값으로 평가될 수 있는 문
표현식이 평가되면 새로운 값을 생성하거나 값을 참조 한다.
let score = 100; // 숫자값 100 생성 => 표현식 let score = 50 + 50; // 100 => 값으로 평가 => 표현식 score ; // 표현식 'Hello' // 식별자 표현식 sum person.name arr[1] // 함수, 메서드 호출 표현식 square() person.getName()
문
토큰 : 문법적으로 더 이상 나눌 수 없는 코드의 기본 요소
let sum = 1 + 2 ; => let , sum , = , 1 , + , 2 , ;
문 : 프로그램을 구성하는 기본 단위 이자 최소 실행 단위이다. ( 명령문 이라 부르기도 한다.)
// 변수 선언문 let x ; // 할당문 x = 5 ; // 함수 선언문 function foo () {} // 조건문 if ( x > 1 ) { console.log(x); } // 반복문 for ( let i = 0; i < 2 ; i ++ ) { console.log(i) }
토큰의 집합 = 문
문의 집합 = 프로그램
표현식인 문과 표현식이 아닌 문
// 변수 선언문은 값으로 평가될 수 없으므로 표현식이 아니다. let x; // x = 1 + 2 는 표현식이면서 완전한 문이기도 하다. x = 1 + 2 ;
(표현식 : 값으로 평가될 수 있는 문)
표현식인 문 : 값으로 평가될 수 있는 문
표현식이 아닌 문 : 값으로 평가될 수 없는 문
=> 변수에 할당해보기
// 표현식이 아닌 문은 값처럼 사용 불가 let foo = let x; let x; // 할당문은 그 자체가 표현식이지만 완전한 문이기도 하다. x = 100;
'JavaScript' 카테고리의 다른 글
모던 자바스크립트 Deep Dive - 객체 리터럴 (0) 2021.09.16 모던 자바스크립트 Deep Dive - 타입 변환과 단축 평가 (0) 2021.09.16 모던 자바스크립트 Deep Dive - 삼항 조건 연산자 (0) 2021.09.16 모던 자바스크립트 Deep Dive - 데이터 타입 (0) 2021.09.16 모던 자바스크립트 Deep Dive - 변수 (0) 2021.09.16