사람 눈에 보이지 않는 문자 (가독성을 위해 안보이게 해놓은 것)
;로 문장 안끝내도 JS가 알아서 분석하여 삽입.
하지만 줄바꿈을 해야 인식한다.
(화이트 스페이스 (LF/CR) 앞에 ;을 자동 삽입하기 때문에 줄바꿈 필수!)
=실행 그룹
모든 문장을 다 실행한다.
형태
{문장 리스트 option}
중괄호 안의 모든 문장을 문장리스트
라고 한다.
문장리스트 작성은 optional.
형태
if (표현식) 문장1
if (표현식) 문장1 else 문장2
처리방법
1. 표현식을 평가한다.
2. 평가 결과를 true/false로 변환한다.
3. true면 문장 1 실행
4. false면 문장 2 실행
예)
블록을 사용하지 않은 예
var a=1, b=1;
if (a===b) console.log ("블록을 사용하지 않음");
블록을 사용한 예
var a=1, b=1;
if(a===b) {
console.log ("블록사용");
}
위의 블록을 사용한 예가 씨맨틱적이기에 블록 최대한 사용 추천
false 사례)
var a=1, b=2;
if (a===b){
console.log ("블록사용, true");
}
else {
console.log ("블록사용, false");
}
개발자 도구창이 열려있을 때 debugger
위치에서 실행 멈춤 (ES5~)
용례)
test 해야되는 부분마다 입력해놓으면 개발자 도구창 이용해 바로 debugger
부분 가서 작업할 수 있기에 수월하다.
사례)
var sports = "스포츠";
debugger;
console.log (sports);
이런 경우 결과 값이 스포츠로 나온다 (콘솔창에서 해보면 느낌 온다)
형태
while (표현식) 문장
기능
표현식의 결과가 false가 될때 까지 문장을 반복하여 실행한다.
⭐️반복이 종료되는 조건이 필요하다
예)
var k=1;
while (k<3) {
console.log(k);
k++;
}
결과 값 : 1,2
형태
do 문장 while (표현식)
기능
while과 처리방법은 동일하나 do문을 먼저 실행
예)
var k=0;
do {
console.log ("do:", k);
k++;
}
while (k<3) {
console.log ("while:", k);
}
결과 : do:0, do:1, do:2, while:3
반복의 대명사
형태
for (초기값 opt; 비교값 opt ; 증감 opt ) 문장
기능
비교표현식 평가 결과가 true
인 동안 문장을 반복 실행.
문장안에 비교표현식이 false
가 되도록 만드는 요소가 있어야 한다.
예)
for (var k = 0 ; k < 2 ; k++)
{
console.log (k);
}
초기값, 비교값, 증감 옵션은 생략할 수 있다.
for var (k=0; k < 3;)
{
console.log (k);
k++;
}
var k=0;
for (; k<3 ; )
{
console.log (k);
k++;
}
for (var k=0;;)
{
console.log (k);
k++;if (k>2) {
break;
}
}
var k=0;
for (;;) {
console.log (k);
if (k===2) {
break;
};
k++
}
고스톱의 스톱
형태)
break;
brea 식별자;
기능
반복문을 종료한다
사용처
for, for~in, while, do~while, switch
예)>
var k=0, m=0;
while (k<3) {
m++;
if (m===2) {
break;
};
console.log (m);
}
결과 값 : 1
for (var k=0; k<3; k++) {
if (k===1) {
break;
console.log ("k===1");
}
console.log (k);
}
결과 값 : 0
고스톱의 고
형태
continue;
continue 식별자;
기능
반복문의 처음으로 이동(분기)
사용처
for, for-in, while, do-while
예)
for (var k=0; k<5 ; k++) {
if (k===2 || k===3) {
continue;
};
console.log (k);
}
결과 : 0,1,4
형태
switch (표현식)
{
case 표현식 : 문장리스트 opt
default : 문장리스트 opt
}
기능
switch 표현식의 평가값과 일치하는 case문 수행
case가 일치하는 곳부터 모든 문장을 수행.
이를 방지하려면 Break 꼭 작성해야
일치하는 case가 없으면 default 수행
예)
var exp = 1;
switch (exp) {
case 1:
console.log (100);
break;
case 2:
console.log (200);
}
OR (||) 형태로도 사용 가능하다
var exp = 3;
switch (exp) {
case 2:
case 3:
console.log (100);
}
->100
형태
try 블록 catch (식별자) 블록
try 블록 finally 블록
try 블록 catch (식별자) 블록 finally 블록
기능
try문에서 에러 발생하면 catch 블록 실행.
Finally블록은 예외 발생과 관계없이 실행
try문에 작성된 콘텐츠에 에러가 발생하여도 프로그램이 돌아갈 수 있도록 한다.
서버에서 데이터 가져올 경우 반드시 try문 안에 작성해야! (안전을 위해)
예)
var sports;
try {
sports = ball;
}
catch (error) {
console.log ("catch 실행");
}
finally {
console.log ("finally 실행");
};
형태
throw 표현식;
기능
명시적으로 예외를 발생시킴
예외가 발생하면 catch 실행
예)
try {
throw {
msg : "예외 발생시킴",
bigo : "임의의 이름사용"
};
}
catch(error) {
console.log(error.msg);
console.log(error.bigo);
};
형태
"use strict"
기능
엄격하게 JS문법 사용 선언
선언 위치부터 적용
코딩 실수를 예방할 수 있으므로 use strict 사용 선언 필수
예)
"use strict"
try {
book = "변수선언하지 않음";
console.log (book);
}
catch(error) {
console.log (error.message);
}
결과 : 변수선언하지 않음