[JavaScript] 모던 JS Deep Dive 5장

ubin·2023년 10월 7일

JavaScript

목록 보기
7/21
post-thumbnail

5.1 값

표현식(expression)이 평가(evaluation)되어 나온 결과

  • 평가(evaluation) : 입력받은 식에 대한 값을 생성하거나 참조하는 것
  • 표현식(expression)은 20 + 30, 이 식을 평가하여 나온 값이 50
  • 보통은 리터럴로 값을 생성함

5.2 리터럴

사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법

  • 리터럴을 입력하면, 런타임에 JS 엔진이 리터럴을 평가해 을 생성한다.

5.3 표현식 expression

값으로 평가될 수 있는 모든 문

  • 표현식이 평가되면 새로운 값을 생성하거나 기존 값을 참조함
  • 리터럴도 값으로 평가되기 때문에 자체가 표현식임
  • 식별자 참조는 값을 생성하지 않지만 값으로 평가되므로 표현식임
  • 리터럴, 식별자(변수, 함수 등의 이름), 연산자, 함수 호출 등의 조합으로 이루어짐
  • 표현식과 표현식이 평가된 값 동치 ⇒ 표현식은 값처럼 사용가능

5.4 문 statement

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

  • 문의 집합으로 이뤄진 것이 프로그램
  • 문 작성 및 순서에 맞게 나열이 프로그래밍
  • 문은 여러 토큰으로 구성됨
    • 토큰: 문법적인 의미를 가지며, 문법적으로 더 이상 나눌 수 없는 코드의 기본 요소
    • 키워드, 식별자, 연산자, 리터럴, 세미콜론(;) ..등
  • 문은 컴퓨터에게 내리는 명령문
    • 선언문, 할당문 조건문, 반복문 등으로 구분됨

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

세미콜론(;)은 문의 종료를 나타낸다

  • JS 엔진은 세미콜론으로 문의 종료를 파악하고 실행함
  • 여러 문을 중괄호로 묶은 {코드 블럭} 뒤는 자체 종결성을 가지기 때문에 안붙임
  • JS 엔진에는 세미콜론 자동 삽입 기능(ASI)이 있어 세미콜론을 꼭 안붙여도 됨
  • 하지만 세미콜론을 붙이는 걸 추천

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

  • 표현식은 문의 일부일 수도 있고, 그 자체로 문이 될 수 있음
  • 표현식인 문 : 값으로 평가될 수 있는 문 ⇒ 할당문 (x = 1 + 2;)
  • 표현식이 아닌 문 : 값으로 평가될 수 없는 문 ⇒ 변수 선언문 (값으로 평가될 수 없음)
  • 구분 방법은 변수에 할당해 보는 것, 표현식이면 변수에 할당 가능함
  • 완료 값: 표현식이 아닌 문을 실행시 undefined를 출력하는 값 ⇒ 표현식의 평과 결과가 아니므로 할당 및 참조 불가
profile
프론트엔드 개발자가 되고싶은 코린이⌨️

0개의 댓글