본문 바로가기
Study/javascript

[JS] 모던 자바스크립트 Deep Dive 스터디 - 05장. 표현식과 문

by 박히밍 2023. 5. 9.
반응형

모던 자바스크립트 Deep Dive

 

 

내맘대로 정리하고 공부하는 모던 자바스크립트 Deep Dive 스터디

 

 

 


 

 

 

[JS] 모던 자바스크립트 Deep Dive 스터디 - 05장. 표현식과 문

 

 

05장. 표현식과 문

 

 

5.1 값

  • 값이란? 표현식이 평가되어 생선된 결과를 말하고 평가란 식을 해석하여 값을 생성하거나 참조하는 것.
  • 모든 값은 데이터 타입을 가진다. 메모리에 저장된 값은 데이터 타입에 따라 다르게 해석된다.
  • 예) 메모리에 저장된 값 0100 0001은 숫자 타입은 65, 문자 타입에선 A로 해석 된다.
  • 변수는 값을 저장하기 위해 확보한 메모리 공간 or 메모리 공간을 식별하기 위해 붙인 이름으로 변수에 할당되는 것은 값이다.
// 10 + 20은 평가되어 숫자 값 30을 생성한다.
10 + 20 // 30

const sum = 10 + 20 // 변수 sum에 할당된 값 30

// 변수 이름 sum의 메모리 공간에 저장된 것은 10+20이 아닌 '값' 30이 저장되어있음.
// 따라서 10+20은 할당 이전에 평가되어 값을 생성해야 한다.

 

 

 

 

5.2 리터럴

  • 리터럴이란? 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법
  • JS 엔진은 코드가 실행되는 시점인 런타임에 리터럴을 평가해 값을 생성한다.
// 정수 리터럴
100

// 소수점 리터럴
10.5

// 문자열 리터럴
'hello'

// boolean 리터럴
true
false

// null 리터럴
null

// undefinde 리터럴
undefinde

// 객체 리터럴
{name: 'Lee'}

// 배열 리터럴
[1, 2, 3]

// 함수 리터럴
function () {}

// 정규표현식 리터럴
/[A-Z]+/g

 

 

 

5.3 표현식

  • 표현식이란? 값으로 평가될 수 있는 문
  • 표현식과 표현식이 평가된 값은 동등한 관계(동치)이다.
const score = 50 + 50 

const x = 1 + 2; // x는 1+2 표현식과 동일한 값
x + 3 // 6

 

 

 

 

 

 

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

  • 문이란, 프로그램을 구성하는 기본 단위이자 최소 실행 단위
  • 예) let x 는 변수 선언문이다.
// 변수 선언문은 값으로 평가될 수 X, 따라서 표현식이 아니다.
var x

// 1 + 2의 값 3이 평가될 수 있는 x는 표현식이다.
x = 1 + 2
반응형