โ ์ง์ฐ๋๋ ํ๋ก์ ํธ์ ์ธ๋ ฅ์ ๋ ํฌ์ ํ๋ฉด ์คํ๋ ค ๋ ๋ฆ์ด์ง๋ค. โ
- Frederick Philips Brooks
Mythical Man-Month ์ ์
๐ ๊ฐ์ ๋์์ ์์ฝ๊ฒ ๋ฐ๋ณตํ๋ ๋ฐ๋ณต๋ฌธ
โ๐ปfor ๋ฌธโ๐ป
์๋ฐ์คํฌ๋ฆฝํธ์์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ ๋ฐ๋ณต๋ฌธ์ for๋ฌธ ์ ๋๋ค.
for๋ฌธ์ ์กฐ๊ฑด์ ๋ค์ด๊ฐ๋ ๊ฐ์ด ์ผ์ ํ๊ฒ ์ปค์ง๋ฉด์ ๋ช ๋ น์ ๋ฐ๋ณตํ ๋ ํธ๋ฆฌํ๊ณ
for๋ฌธ์์๋ ๋ช ๋ฒ ๋ฐ๋ณตํ๋์ง ๊ธฐ๋กํ๊ธฐ ์ํด ์นด์ดํฐ๋ฅผ ์ฌ์ฉํ๊ณ for๋ฌธ์ ์ฒซ ๋ฒ์งธ ํญ์์ ์นด์ดํฐ ๋ณ์๋ฅผ ์ง์ ํฉ๋๋ค.
for๋ฌธ์ ์ด๊ธฐ์, ์กฐ๊ฑด์, ์ฆ๊ฐ์์ ์ฌ์ฉํด ๋ฐ๋ณต์ ์ ์ดํ๋ ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๋ฐ๋ณต๋ฌธ ์ ๋๋ค.
๊ธฐ๋ณธํ
for (์ด๊น๊ฐ; ์กฐ๊ฑด; ์ฆ๊ฐ์) { ... }
1) ์ด๊น๊ฐ : ๋ช ๋ฒ ๋ฐ๋ณตํ ์ง ์ง์ ํ๊ธฐ ์ํด ์นด์ดํฐ ๋ณ์๋ฅผ ์ฌ์ฉํ๋๋ฐ ,
์ด ํญ๋ชฉ์์ ์นด์ดํฐ ๋ณ์๋ฅผ ์ ์ธํ๊ณ ์ด๊ธฐํ ํฉ๋๋ค. ์ด๊น๊ฐ์ 0์ด๋ 1๋ถํฐ ์์ํฉ๋๋ค.
2) ์กฐ๊ฑด : ๋ฌธ์ฅ์ ๋ฐ๋ณตํ๊ธฐ ์ํด ์ฒดํฌํ ์กฐ๊ฑด ๋ถ๋ถ์ ๋๋ค.
์ด ์กฐ๊ฑด์ ๋ง์กฑํด์ผ for๋ฌธ์ ์๋ ๋ช ๋ น์ ๋ฐ๋ณตํ ์ ์์ต๋๋ค.
3) ์ฆ๊ฐ์ : ๋ฌธ์ฅ์ ์คํํ ํ ์นด์ดํฐ ๋ณ์๋ฅผ ์ฆ๊ฐ์ํค๋ ๋ถ๋ถ์ ๋๋ค.
๋ณดํต ์นด์ดํฐ๊ฐ์ ํ๋ ๋ ์ฆ๊ฐ์ํค๋ ์ฉ๋๋ก ์ฌ์ฉํฉ๋๋ค.
for (var i=0; i<=10; i++){
console.log(i);
}
์ ์ฝ๋๋ 0๋ถํฐ 10๊น์ง ์ซ์๋ฅผ ์ถ๋ ฅํ๋ ์์์ ๋๋ค.
๋ณ์ i๋ ์ด๊ธฐ๊ฐ 0์ผ๋ก ์์ํ์ฌ, ์กฐ๊ฑด์ i < 10์ด true์ผ ๋๊น์ง ๋ฐ๋ณต๋๋ฉฐ, ๋ฐ๋ณต๋ง๋ค i์ ๊ฐ์ 1์ฉ ์ฆ๊ฐ์ํต๋๋ค.
๐ค ์ด๊น๊ฐ์ ์ฒ์์ ํ ๋ฒ๋ง ํ ๋นํ๊ณ ์กฐ๊ฑด ์ฒดํฌ์ ๋ช
๋ น์คํ, ์ฆ๊ฐ์์ ๊ณ์ ๋ฐ๋ณตํ๋ค๋ ๊ฑฐ ๊ธฐ์ตํ์ธ์
๐ค ๋ณ์ ์ ์ธ ์, const๋ฅผ ์ฐ๋ฉด ๊ฐ ๋ณ๊ฒฝ์ด ๋ถ๊ฐํ์ฌ ์๋ฌ๊ฐ ๋ฐ์ํ๋ ์ฃผ์ํ์ธ์
โ๐ปwhile ๋ฌธโ๐ป
์กฐ๊ฑด์๋ง์ ์ฌ์ฉํด ๋ฐ๋ณต์ ์ ์ดํ๋ ๋ฐ๋ณต๋ฌธ์ ๋๋ค.
์กฐ๊ฑด์์ด true์ผ ๋ ๊น์ง ๋ฐ๋ณต๋ฉ๋๋ค.
var i = 0;
while (i<10) {
console.log(i);
i++;
}
์ ์ฝ๋๋ for๋ฌธ๊ณผ ๊ฐ์ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ๋ ์์์ ๋๋ค.
๋ณ์ i๋ ์ด๊ธฐ๊ฐ 0์ผ๋ก ์์ํด, ์กฐ๊ฑด์ i < 10์ด true์ผ ๋ ๊น์ง ๋ฐ๋ณต๋๋ฉฐ, ๋ฐ๋ณต๋ง๋ค i์ ๊ฐ์ ์ฆ๊ฐ์ํต๋๋ค.
โ๐ปdo while ๋ฌธโ๐ป
while๋ฌธ๊ณผ ๋น์ทํ์ง๋ง, ๋จผ์ ํ ๋ฒ ์คํํ ํ ์กฐ๊ฑด์์ ํ๊ฐํด ๋ฐ๋ณต ์ฌ๋ถ๋ฅผ ๊ฒฐ์ ํ๋ ๋ฐ๋ณต๋ฌธ์ ๋๋ค.
๋ฐ๋ผ์ ์ต์ ํ ๋ฒ์ ๋ฐ๋ณต๋ฉ๋๋ค.
var i = 0;
do {
consloe.log(i);
i++
} while (i < 10);
์ ์ฝ๋๋ for๋ฌธ๊ณผ ๊ฐ์ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ๋ ์์์ ๋๋ค.
๋ณ์ i๋ ์ด๊ธฐ๊ฐ 0์ผ๋ก ์์ํ์ฌ, do - while๋ฌธ์ ์ฝ๋ ๋ธ๋ญ์ด ๋จผ์ ํ ๋ฒ ์คํ ๋๋ฉฐ, ๊ทธ ํ์ ์กฐ๊ฑด์ i < 10์ด
true์ผ ๋ ๊น์ง ๋ฐ๋ณต๋ฉ๋๋ค. ๋ฐ๋ณต๋ง๋ค i์ ๊ฐ์ 1์ฉ ์ฆ๊ฐ์ํต๋๋ค.
๐ ์ง์ ํ์ ๊ตฌ๋ณํ๋ ํ๋ก๊ทธ๋จ ๋ง๋ค๊ธฐ
์ด๋ฒ์๋ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ์ซ์๋ฅผ userNumber์ ํ ๋นํ ํ ์ง์์ธ์ง, ํ์์ธ์ง ๊ตฌ๋ณํ๋ ์์ ๋ฅผ ๋ง๋ค์ด๋ณด๋๋ก
ํ๊ฒ ์ต๋๋ค.
See the Pen Untitled by leeyouna21 (@leeyouna21) on CodePen.
๐ ์ฃผ์ !! (`${userNumber} : ์ง์`) :
๋ถ๋ถ์์ ์์ ๋ฐ์ดํ (' ') ๊ฐ ์๋ ๋ฐฑํฑ(` `)์ ์ฌ์ฉํด์ผํจ์ ๋ช
์ฌํ์ !!๐
'javascript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์๋ฐ์คํฌ๋ฆฝํธ ๋ฐ์ดํฐ ์ ์ฅํ๊ธฐ ์๋ฒฝ ์ ๋ฆฌ (13) | 2023.02.26 |
---|---|
์๋ฐ์คํฌ๋ฆฝํธ ํ์ฉ ๋ฌธ์ ํ์ด๋ณด๊ธฐ (14) | 2023.02.26 |
์๋ฐ์คํฌ๋ฆฝํธ ์กฐ๊ฑด๋ฌธ ๋ง์คํฐ ํ๊ธฐ (14) | 2023.02.26 |
์ฐ์ฐ์ ์ข ๋ฅ์๋ ๋ญ๊ฐ ์์๊น ? (12) | 2023.02.21 |
์๋ฃํ ? ํ๋ก๊ทธ๋จ์์ ์ฒ๋ฆฌํ ์๋ฃ์ ํํ ! (12) | 2023.02.20 |