5장 표현식과 문
5.1 값
표현식(expression) --> 평가됨(evaluate) ---> 값==결과(value)
값은 메모리에 2진수(bit)로 저장된다.
var sum = 10 + 20;
//sum에는 10+20 이 평가되어 30이 할당된다.
값이 100인줄 알았다면 1바이트만 쓰면 되는데 그래서 8바이트가 필요하구나
5.2 리터럴
리터럴? 리터럴을 입력해서 값 표현한다.
사람이 이해할 수 있는 문자, 기호로 값을 표기함
ex) 아리비아 숫자, 알파벳, 한글, 미리 약속된 기호('', "", [], {}, // 등)
입력 3 -> 런타임에 리터럴을 평가 -> 값 3
5.3 표현식
표현식(expression) --> 평가됨(evaluate) ---> 값==결과(value)
var score = 100;
// 100은 리터럴이다.
// 리터럴 100은 평가되서 값 100이 된다.
// 100 리터럴은 표현식이다.
var score2 = 50 + 50;
// 50 + 50 : 리터럴 연산자
// 50 + 50 --> 평가됨 --> 값 100
// 50 + 50 연산자 는 표현식이다.
score; //100
// 변수 식별자를 참조하면 100이 나온다.
// 변수 식별자는 값을 생성하지 않지만, 값 100으로 평가된다.
// score 변수 식별자 는 표현식이다
square();
// 함수, 메서드 호출 표현식
5.4 문
문: 기본 단위, 최초 실행 단위 이다.
ex) 실행문, 선언문, 정의문, 반복문, 할당문
토큰: 더 이상 나눌 수 없는 코드의 기본 요소
세미콜론(;): 문의 종료
var x; //변수 선언문
x = 5; //할당문
function foo() {} //함수 선언문
if(x>1) {console.log(x);} //조건문
for(var i=0; i <2; i++) {console.log(i);} //반복문
5.5 세미콜론 자동 삽입 기능
문이 끝나면 세미콜론(;) 을 붙여라
중괄호 묶은 코드블록 뒤에는 세미콜론(;) 붙이지 말아라.
세미콜론은 생략이 가능하다.
자바스크립트 엔진이 자동으로 붙여준다 : 세미콜론 자동 삽입 기능 ASI (아씨!!) Automatic Semicolon Insert
프론트엔드에서 사용하는 ESLint에서도 자동으로 세미콜론 사용을 기본으로 해놓음. 즉 세미콜론 쓰인다.
5.6 표현식 문 VS 표현식 아닌 문
변수에 할당 해봐라
표현식 아닌 문: 값으로 평가 안됨. ex) var x;
크롬 개발자 도구에서 실행하면 undefined를 출력함
var foo = var x;
표현식 아닌 문 == 값처럼 사용 못함
var x; 변수 선언문 == 표현식이 아닌 문
표현식 문 : 값으로 평가됨. ex) x=100;
크롬 개발자 도구에서 실행하면 평가된 값을 반환함
var foo = x = 100;
x=100; // 할당문 == 표현식 문 == 값 처럼 사용
'자바스크립트-스터디[2021-10-05~완료]' 카테고리의 다른 글
12 함수 (0) | 2021.10.15 |
---|---|
9장 타입 변환과 단축 평가 (0) | 2021.10.12 |
[2주차]11 원시 값과 객체의 비교 (0) | 2021.10.10 |
10 객체 리터럴 (0) | 2021.10.10 |
08 제어문 (0) | 2021.10.10 |