[JS] DeepDive - 5장

Baoro·2022년 5월 3일
0

DeepDive

목록 보기
3/9
post-thumbnail

표현식과 문

값 이란?

식이 평가되어 생성된 결과

var sum = 10+20;

위 코드를 보면 sum이라는 변수에 10+20을 할당한다.
변수란 하나의 값을 저장하기 위해 확보한 메모리 공간이라고 공부했었다. 즉 변수에 할당하는 것은 "값"이다.
즉, 위 코드의 sum이라는 변수에 할당되는 것은 10+20 이 아닌 10+20이 평가된 결과값인 30이다.


리터럴 이란?

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

자바스크립트 엔진은 런타임에 리터럴을 평가해 값을 생성한다.


표현식 이란?

값으로 평가될 수 있는 문.
표현식이 평가되면 새로운 값을 생성하거나 기존값을 참조한다.

var score = 100;	
// 100은 리터럴. 즉 표현식
var score = 50 + 50; 
//50+50은 평가되어 숫자 100을 생성하므로 표현식
score; 
//변수식별자를 참조하면 변수 값인 100으로 평가되므로 표현식
//즉 값을 생성하지 않지만 값으로 평가되므로 표현식

문 이란?

문법적으로 더 이상 나눌 수 없는 코드의 기본 단위이자 최소 실행 단위

//변수 선언문
var x;	

//할당문
x = 5;

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

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

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

표현식문 vs 표현식이 아닌 문

표현식문과 표현식이 아닌 문을 구별하는 방법

-> 변수에 할당해 보고 값으로 평가되는지 확인한다!

var x;
x = 100;

이 예제를 변수에 할당해보겠다.

var foo = var x;  // SyntaxError
var foo = x = 100;  // 100

따라서

var x;  // 표현식이 아닌 문
x = 100;  // 표현식인 문
profile
꾸준히.... 깔끔하게.... 끝까지....

0개의 댓글