[자바스크립트 Deep Dive] 5. 표현식과 문

unhyif·2022년 5월 13일
0

5.1 값

표현식의 평가 결과

cf) 평가: 식을 해석하여 값을 생성하거나 참조하는 것

  • 모든 값은 데이터 타입을 가지며, 메모리 공간에 2진수로 저장됨

5.2 리터럴

값을 생성할 수 있는, 사람이 이해할 수 있는 문자 or 기호

  • 리터럴을 통해 다양한 타입의 값을 생성할 수 있음
  • JS 엔진은 런타임에 정수 리터럴 3을 평가하여 숫자 값 3을 생성함

e.g. 2진수 리터럴, 문자열 리터럴, 불리언 리터럴, 객체 리터럴...


5.3 표현식

값으로 평가되는 문

-> 표현식은 값처럼 사용될 수 있음

// 리터럴 표현식
10
'Hello'

// 식별자 표현식
sum
person.name
arr[1]

// 연산자 표현식
10 + 20
sum !== 10

// 함수/메소드 호출 표현식
square()
person.getName()

5.4 문

프로그램을 구성하는 기본 단위이자 최소 실행 단위

-> 문의 집합이 프로그램이고, 문을 알맞은 순서로 나열하는 것이 프로그래밍

cf) 명령문으로도 불림

// 변수 선언문
var x;

// 함수 선언문
function foo() {}

// 할당문
x = 5;

// 조건문
if (x > 1) { console.log(x); }

// 반복문
for (var i = 0; i < 2; i++) { console.log(i); }

5.5 세미콜론과 세미콜론 자동 삽입 기능

  • 세미콜론: 문의 종료를 나타냄
  • JS 엔진은 문의 끝이라고 예측되는 지점에 세미콜론을 자동으로 붙여줌

5.6 표현식인 문과 표현식이 아닌 문

  • 차이점: 값으로 평가됨 VS 값으로 평가되지 않음

e.g. 할당문은 값으로 평가되므로 표현식인 문이지만, 선언문은 표현식이 아닌 문임

var x;

// 할당문
console.log((x = 100)); // 100

// 선언문
console.log(var y); // Uncaught SyntaxError

0개의 댓글