[JavaScript] ์ ์ด๋ฌธ
์ ์ด๋ฌธ์ ์กฐ๊ฑด์ ๋ฐ๋ผ ์ฝ๋ ๋ธ๋ก(*๋ธ๋ก๋ฌธ)์ ์คํํ๊ฑฐ๋ ๋ฐ๋ณต ์คํ์ ํ ๋ ์ฌ์ฉ๋ฉ๋๋ค.
์ข ๋ฅ | ์ค๋ช | ์์ |
์กฐ๊ฑด๋ฌธ | ์กฐ๊ฑด์์ ๊ฒฐ๊ณผ์ ๋ฐ๋ผ ๋ธ๋ก๋ฌธ์ ์คํ์ ๊ฒฐ์ | if-else, switch |
๋ฐ๋ณต๋ฌธ | ์กฐ๊ฑด์์ ํ๊ฐ ๊ฒฐ๊ณผ๊ฐ ์ฐธ์ธ ๊ฒฝ์ฐ ์ฝ๋ ๋ธ๋ก๋ฌธ์ ๋ฐ๋ณต ์คํ | for, while, do-while |
break | ์ฝ๋ ๋ธ๋ก์ ํ์ถ | |
continue | ํ ์ง์ ์์ ๋ธ๋ก๋ฌธ์ ์ค๋จํ๊ณ ๋ฐ๋ณต๋ฌธ์ ์ฆ๊ฐ์์ผ๋ก ์คํ ํ๋ฆ์ ์ด๋ |
*๋ธ๋ก๋ฌธ : 0๊ฐ ์ด์์ ๋ฌธ์ ์ค๊ดํธ๋ก ๋ฌถ์ ๊ฒ์ผ๋ก ์ ์ด๋ฌธ์ด๋ ํจ์๋ฅผ ์ ์ํ ๋ ์ฃผ๋ก ์ฌ์ฉ.
** ์ ์ด๋ฌธ์ ํตํด ์ฝ๋์ ์คํ ํ๋ฆ์ ์ธ์์ ์ผ๋ก ์ ์ดํ ์ ์์ง๋ง, ์ด๋ ์ฝ๋์ ํ๋ฆ์ ์ดํดํ๊ธฐ ์ด๋ ต๊ฒ ๋ง๋ค์ด ๊ฐ๋ ์ฑ์ ํด์น๋ ๋จ์ ์ด ์์ต๋๋ค. ๋ฐ๋ผ์ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ ๊ธฐ๋ฒ์์๋ forEach, map, filter, reduce ๊ฐ์ ๊ณ ์ฐจ ํจ์๋ฅผ ํตํด ๋ณต์ก์ฑ์ ํด๊ฒฐํ ์ ์์ต๋๋ค.
์กฐ๊ฑด๋ฌธ
if-else๋ฌธ
if(์กฐ๊ฑด์1) {
// ์กฐ๊ฑด์์ด ์ฐธ์ด๋ฉด ์คํ
} else if(์กฐ๊ฑด์2) {
// ์กฐ๊ฑด์2๊ฐ ์ฐธ์ด๋ฉด ์คํ
} else {
// ์กฐ๊ฑด์1, 2์ด ๋ชจ๋ ๊ฑฐ์ง์ด๋ฉด ์คํ
}
์ด๋ else if๋ ์ ํ์ ์ฌํญ์ผ๋ก, ๋ฌดํ์ผ๋ก ์์ฑ ๊ฐ๋ฅํฉ๋๋ค.
switch๋ฌธ
์ฃผ์ด์ง ํํ์์ ํ๊ฐํ์ฌ ๊ทธ ๊ฐ๊ณผ ์ผ์นํ๋ ํํ์์ ๊ฐ์ง๋ case๋ฌธ์ ์คํํฉ๋๋ค. ์ด๋ case๋ฌธ ์์ break๋ฌธ์ด ์๋ค๋ฉด switch๋ฌธ์ ์ข ๋ฃํ๊ฒ ๋ฉ๋๋ค. (๋ง์ฝ break๋ฌธ์ด ์๋ค๋ฉด default๊ฐ์ด ์คํ๋๊ณ ๋๋จ)
ใด
switch(ํํ์) {
case ํํ์1:
//ํํ์๊ณผ ํํ์1์ด ์ผ์นํด๋ฉด ์คํ
break;
case ํํ์2:
//ํํ์๊ณผ ํํ์2์ด ์ผ์นํด๋ฉด ์คํ
break;
default :
//์ผ์นํ๋ case๊ฐ ์๋ค๋ฉด ์คํ
}
๋๋ถ๋ถ if-else๋ฌธ์ ์ฌ์ฉํ์ง๋ง, ์กฐ๊ฑด์ด ๋๋ฌด ๋ง์์ ๊ฐ๋ ์ฑ์ด ์ข์ง ์๋ค๋ฉด switch๋ฌธ์ด ๊ถ์ฅ๋ฉ๋๋ค.
๋ฐ๋ณต๋ฌธ
for๋ฌธ
์กฐ๊ฑด์์ด ๊ฑฐ์ง์ผ๋ก ํ๊ฐ๋ ๋๊น์ง ์ฝ๋ ๋ธ๋ก์ ๋ฐ๋ณต ์คํํฉ๋๋ค.
for(var i=0;i<3;i++) {
console.log(i);
}
// ์คํ ๊ฒฐ๊ณผ : 0,1,2
for(;;) { ... } // ๋ฌดํ ๋ฃจํ
while๋ฌธ
์ฃผ์ด์ง ์กฐ๊ฑด์์ ํ๊ฐ ๊ฒฐ๊ณผ๊ฐ ์ฐธ์ด๋ฉด ์ฝ๋ ๋ธ๋ก์ ๊ณ์ํด์ ๋ฐ๋ณต ์คํํฉ๋๋ค. while๋ฌธ์ for๋ฌธ๊ณผ ๋ค๋ฅด๊ฒ ๋ฐ๋ณต ํ์๊ฐ ๋ถ๋ช ํํ ๋ ์ฃผ๋ก ์ฌ์ฉ๋ฉ๋๋ค.
var cnt = 0;
while(cnt < 3) {
console.log(cnt);
cnt++;
}
// ์ถ๋ ฅ ๊ฒฐ๊ณผ : 0,1,2
while(true) {...} // ๋ฌดํ ๋ฃจํ
do-while๋ฌธ
์ฝ๋ ๋ธ๋ก์ ๋จผ์ ์คํํ๊ณ ์กฐ๊ฑด์์ ํ๊ฐํ๊ธฐ ๋๋ฌธ์, ์ฝ๋๋ธ๋ก์ ๋ฌด์กฐ๊ฑด ํ ๋ฒ ์ด์ ์คํ๋ฉ๋๋ค.
var cnt = 0;
do {
console.log(cnt);
cnt++;
} while(cnt < 3);
// ์ถ๋ ฅ ๊ฒฐ๊ณผ : 0,1,2
[์ถ์ฒ] ๋ชจ๋ ์๋ฐ์คํฌ๋ฆฝํธ Deep Dive
๋ชจ๋ ์๋ฐ์คํฌ๋ฆฝํธ Deep Dive: ์๋ฐ์คํฌ๋ฆฝํธ์ ๊ธฐ๋ณธ ๊ฐ๋ ๊ณผ ๋์ ์๋ฆฌ
269๊ฐ์ ๊ทธ๋ฆผ๊ณผ ์๋ฆฌ๋ฅผ ํํค์น๋ ์ค๋ช ์ผ๋ก ‘์๋ฐ์คํฌ๋ฆฝํธ์ ๊ธฐ๋ณธ ๊ฐ๋ ๊ณผ ๋์ ์๋ฆฌ’๋ฅผ ์ดํดํ์! ์นํ์ด์ง์ ๋จ์ํ ๋ณด์กฐ ๊ธฐ๋ฅ์ ์ฒ๋ฆฌํ๊ธฐ ์ํ ์ ํ์ ์ธ ์ฉ๋๋ก ํ์ด๋ ์๋ฐ์คํฌ๋ฆฝํธ๋ ๊ณผ๋
wikibook.co.kr