[read] 모자딥 - 05장. 표현식과 문

Jenna·2025년 3월 31일
0

js-deepdive

목록 보기
5/6

5.1 값

  • 값은 식(표현식)이 평가되어 생성된 결과
10+20; // 값 30
  • 모든 값은 데이터타입을 가지며 타입에 따라 다르게 해석된다.
    ex) 0100 0001 을 숫자로 해석하면 65, 문자로 해석하면 A
  • 변수에 할당되는 것은 값

5.2 리터럴

  • 리터럴은 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법
  • 3은 단순한 숫자가 아니라 숫자 리터럴임. js엔진이 해당 리터럴을 보고 메모리에 값을 생성한다.
  • 리터럴을 사용하면 다양한 데이터 타입의 값을 생성할 수 있다.
// example

100 // 정수 리터럴
'hello' // 문자열 리터럴
true // 정수 리터럴
{ name: 'Lee', address: 'Seoul'} // 객체 리터럴
function() {} // 함수 리터럴

5.3 표현식

  • 표현식은 값으로 평가될 수 있는 문. 즉, 표현식이 평가되면 새로운 값을 생성하거나 기존 값을 참조한다.
  • 리터럴을 값으로 평가됨. 즉 리터럴도 표현식.
  • 표현식과 표현식이 평가된 값이 동등한 관계는 동치이다.
1+2 = 3 // 1+2와 3은 동치
  • 표현식은 다른 표현식의 일부가 되어 새로운 값을 생성할 수 있음
var x = 1+2;

x+3 = 6;

5.4 문

  • 문(statement)은 프로그램을 구성하는 기본 단위이자 최소 실행 단위
  • 문은 여러 토큰으로 구성된다. 토큰이란 문법적인 의미를 가지며, 문법적으로 더 이상 나눌 수 없는 코드의 기본 요소를 말한다.
  • 문은 명령문, 즉 컴퓨터에 내리는 명령이다. 선언문, 할당문, 조건문, 반복문 등으로 구분된다.

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

  • 세미콜론(;)은 문의 종료를 나타냄.
  • 자바스크립트 엔진에는 세미콜론 자동 삽입 기능(ASI)가 암묵적으로 수행된다.

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

  • 표현식은 문의 일부일 수도 있고 그 자체로 문이 될 수도 있다.
  • 표현식인 문과 표현식이 아닌 문을 구별하는 가장 간단하고 명료한 방법은 변수에 할당해 보는 것
var x; // 변수 선언문은 값으로 평가될 수 없으므로 표현식이 아니다.
x = 100; // 할당문은 표현식인 완전한 문이다.
profile
FE/Game Dev.

0개의 댓글