[자바스크립트 비기너] 3. 문장(Statement)

Speedwell🍀·2021년 12월 17일
0

문장, 화이트 스페이스, 세미콜론 자동 삽입, 블록

문장

  • 형태 : ;(세미콜론)

  • 문장을 끝나게 하는 역할


화이트 스페이스(White Space)

  • 사람 눈에 보이지 않는 문자

    • 가독성을 위한 것

    • 문자마다 기능을 갖고 있음

    • e.g. 스페이스, 엔터, 탭, NBSP, Line Feed, Carriage Return 등


세미콜론 자동 삽입

  • 세미콜론은 문장 끝에 작성

  • 세미콜론을 삽입하여 자동으로 문장이 끝나게 함

    • JS엔진이 분석 및 삽입

블록

  • 형태 : {문자 리스트opt}

  • 중괄호{ }

    • 실행 그룹

    • 블록 안의 모든 문장 실행

  • 문장 리스트

    • { } 안의 모든 문장

    • 문장 리스트 작성은 선택(option)

    • 강좌에서 option을 opt로 표기

  • 블록 사용 권장 -> 확장성과 일관성 위해



if, debugger

if

  • 형태 : if (표현식) 문장1 or if (표현식) 문장1 else 문장2

  • 조건에 따른 처리

    • 먼저 표현식을 평가

    • 평가 결과를 true/false로 변환

    • true이면 문장1 실행, false이면 문장2 실행


debugger

  • debugger 위치에서 실행 멈춤

    • 브라우저의 개발자 도구 창이 열려 있을 때만 멈춤

    • 열려있지 않으면 멈추지 않음

    • ES5부터 지원

    • debugger 종료하려면 F8, 다음으로 넘어가려면 F11



while, do-while, for

while

  • 형태 : while (표현식)

  • 표현식의 평가 결과가 false가 될 때까지 문장을 반복하여 실행. 반복이 종료되는 조건 필요


do-while

  • 형태 : do 문장 while (표현식)

  • 처리 방법은 while 문과 같음. 단, do 문을 먼저 실행

var k = 0;
do{
	log("do:", k);
    k++;
} while (k < 3){
	log("while:", k);
};

/*
[실행 결과]

do:0

do:1

do:2

while:3
*/

for

  • 형태 : for(초기값; 비교; 증감) 문장

  • 2번째의 비교 표현식의 평가 결과가 true인 동안 문장을 반복 실행

  • 증감 생략, 초기값과 증감 생략, 비교와 증감 생략, 모두 생략 가능 => 가능하지만 직관성, 가독성 떨어짐



break, continue

break

  • 형태: break; 혹은 break 식별자;

  • 반복문 종료

  • for, for~in, while, do~while, switch에서 사용


continue

  • 형태: continue; 혹은 continue 식별자;

  • 반복문의 처음으로 분기

  • for, for~in, while, do~while에서 사용

for (var k = 0; k < 5; k++){
	if (k == 2 || k == 3){
    	continue; // k++로 분기
    };
    log(k);
};
/*
[실행 결과]
0
1
4
*/


switch

  • 형태:
switch (표현식) {

    case 표현식 : 문장 리스트

    default: 문장 리스트

};
  • switch 표현식의 평가 값과 일치하는 case 문 수행

  • break 사용

  • 일치하는 case가 없으면 default 수행

  • OR(||) 형태



try-catch, throw

try-catch

  • 형태:

try 블록 catch (식별자) 블록

try 블록 finally 블록

try 블록 catch (식별자) 블록 finally 블록

  • try 문에서 예외 발생을 인식

  • 예외가 발생하면 catch 블록 실행

  • finally 블록은 예외 발생과 관계없이 실행


throw

  • 형태: throw 표현식;

  • 명시적으로 예외를 발생시킴

  • 예외가 발생하면 catch 실행

try {
	throw "예외 발생시킴";
    	var sports = "스포츠";
} catch(error){
	log(error);
    	log(sports);
};
/*
[실행 결과]
예외 발생시킴
undefined
*/
try {
	throw {
    		msg: "예외 발생시킴",
        	bigo: "임의의 이름 사용"
	};
} catch(error){
	log(error.msg);
    	log(error.bigo);
};
/*
[실행 결과]
예외 발생시킴
임의의 이름 사용
*/
try {
	throw new Error("예외 발생시킴");
} catch(error){
	log(error.message);
};


strict 모드

  • 형태 : "use strict";

  • 엄격하게 JS 문법 사용의 선언

  • 작성한 위치부터 적용

  • ES5부터 지원

0개의 댓글