[JS] Expression & Statement
Terms
-
평가(evalutate) - 식을 해석해서 값을 생성하거나 참조하는 것
-
값(value) - 표현식이 평가되어 생성된 결과.
- 모든 값은 데이터 타입을 가지며, 메모리에 2진수로 저장됨
- 데이터 타입에 따라 값이 다르게 해석됨
- 리터럴을 사용하여 값을 생성
-
리터럴(literal) - 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법
- 런타임에 리터럴을 평가해 값을 생성
- 정수, 문자열, 불리언, 배열, 함수 리터럴 등..
표현식
Expression
- 값으로 평가할 수 있는 문
- 평가되면 새로운 값을 생성하거나 기존 값을 참조
- 리터럴, 식별자, 연산자, 함수 호출 등의 조합
예시
// 리터럴 표현식
10
'hi'
// 식별자 표현식
arr[1]
person.name
sum
// 연산자 표현식
10 + 20
sum = 10
sum !== 10
// 함수/메서드 호출 표현식
square()
person.getName()
문
Statement
- 프로그램을 구성하는 기본 단위이자 최소 실행 단위 (=명령문)
- 선언문, 할당문, 조건문, 반복문 등..
- 문의 끝에 세미콜론을 붙이면 문의 종료를 나타냄
예시
// 변수 선언문
var x;
// 할당문
x = 5;
// 함수 선언문
function foo () {}
// 조건문
if () {}
// 반복문
for (let i = 0; i < 10; i++) {}
표현식인 문
- 할당문
x = 100;
- 값처럼 사용할 수 있다
var foo = x = 100;
- 개발자 도구 콘솔에서 표현식인 문은 평가된 값을 반환
표현식이 아닌 문
- 변수 선언문
var x;
- 개발자 도구 콘솔에서 표현식이 아닌 문을 실행하면 완료 값
undefined
출력
참고 - 모던 자바스크립트 Deep dive
Author And Source
이 문제에 관하여([JS] Expression & Statement), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@suuhyeony/JS-Expression-Statement저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)