๐ป for ๋ฌธ์ ํ์ฉ
let cities = ["์์ธ", "๋์ ", "๋๊ตฌ", "๋ถ์ฐ", "๊ด์ฃผ", "์ ์ฃผ๋"]; let home = "์์ธ"; if (cities[0] === home) { alert("์, ์ฌ๊ธฐ ์ฌ์๋๊ตฐ์"); } else if (cities[1] === home) { alert("์, ์ฌ๊ธฐ ์ฌ์๋๊ตฐ์"); } else if (cities[2] === home) { alert("์, ์ฌ๊ธฐ ์ฌ์๋๊ตฐ์"); } else if (cities[3] === home) { alert("์, ์ฌ๊ธฐ ์ฌ์๋๊ตฐ์"); }
๋ณ์
cities
๋ฐฐ์ด ์์ ์๋ ์ง์ญ๋ค์ ํ๋ํ๋ ์ง์ ์ ํด์ค์ผ ํ๋ ๋ถํธํจ์ ์ค์ผ ์ ์๋ค.
์ฐ๋ฆฌ๊ฐ ํ๋ก๊ทธ๋๋ฐ์ ๋ฐฐ์ฐ๋ ๊ฐ์ฅ ํฐ ์ด์ ๋ ๋จ์ ๋ฐ๋ณต์ ์ค์ด๊ธฐ ์ํด์๊ฐ ์๋๊น์? ์ด๋ ๊ฒ ๋นํจ์จ์ ์ธ ์ฝ๋๋ฅผ for ๋ฐ๋ณต๋ฌธ์ ์ฌ์ฉํ๋ฉด ์งง๊ฒ ์ค์ผ ์ ์์ต๋๋ค.let cities = ["์์ธ", "๋์ ", "๋๊ตฌ", "๋ถ์ฐ", "๊ด์ฃผ", "์ ์ฃผ๋"]; let home = "๋์ "; for (let i = 0; i <= 50; i++) { if (cities[i] === home) { alert("์," + cities[i] + " ์ฌ์๋ ๊ตฐ์"); } } //๊ฒฐ๊ณผ: ์, ๋์ ์ฌ์๋๊ตฐ์
- ๋ณ์
cities
๋ฐฐ์ด ์์ ์๋ ์ง์ญ์ ๋ณ์home
์์ ์ง์ ๋ง ํด์ฃผ๋ฉด ๋๋ค.- ๋ฐฐ์ด์ด 100๊ฐ๊ฐ ๋๋ , 1000๊ฐ๊ฐ ๋๋ ,
'i <= 50'
์์ ์ง์ ๋ง ํด์ฃผ๋ฉด ๋๋ค.์์ ํ๋ ๋
- for๋ฌธ์ ์ฌ์ฉํ๋ฉด ์ฝ๋๋ฅผ ์ํ๋ ๋งํผ ๋ฐ๋ณต์ํฌ ์ ์์ต๋๋ค.
- ์คํ ์กฐ๊ฑด์ ๋ฐ๋ผ ์ธ์ ๋ถํฐ ์ธ์ ๊น์ง ๋ฐ๋ณตํ๊ฒ ๋ ๊ฒ์ด๋ผ๊ณ ์๋ ค์ฃผ๊ธฐ๋ง ํ๋ฉด ๋ฉ๋๋ค.
let count = 1; for (let i = 0; i <= 5; i++) { count = count + 1; }
๐ ํํ๋ ์๋์ ๊ฐ์ต๋๋ค.
for (๋ฐ๋ณต์กฐ๊ฑด) { //๋ฐ๋ณต์กฐ๊ฑด์ด ๋ง์ผ๋ฉด ์คํํ ์ฝ๋ }
๐ ๋ฐ๋ณต์กฐ๊ฑด์ ๋ง๋ก ํํํ๋ฉด,
0๋ถํฐ 5๊น์ง 1์ฉ ์ฆ๊ฐ ์ํค๋ฉด์ for ๋ฌธ์
{}
๋ด๋ถ๋ฅผ ์คํํ๋ผ๋ ๋ป์ ๋๋ค.i๋ 1์ฉ ์ฆ๊ฐํ๋ฉด์ 0, 1, 2, 3, 4, 5๊น์ง ์ฆ๊ฐํ๊ณ , for๋ฌธ ๋ด๋ถ์ ์ฝ๋ ์ด 6๋ฒ ์คํ๋ฉ๋๋ค.
i ๊ฐ 5๊ฐ ๋ ๋๊น์ง for ๋ฌธ์
{}
์์ ์คํํ๋ค๊ฐ, 6์ด ๋๋ฉดi <= 5
๋ผ๋ ์์false
๊ฐ ๋ฉ๋๋ค. (6 > 5)
- ๋ฐ๋ผ์{}
๋ด๋ถ๋ก ๋ค์ด๊ฐ์ง ๋ชปํ๊ณ ,{}
๋ฐ์ผ๋ก ๋ฒ์ด๋ฉ๋๋ค.
- ๊ทธ๋ ๋ค๋ฉด i ๊ฐ 0, 1, 2, 3, 4, 5 ์ผ ๋ ์คํํ๊ฒ ๋๋ for ๋ฌธ์ด ์ด 6๋ฒ ์คํ๋ฉ๋๋ค.
์กฐ๊ฑด์ ํํ์ ๋ค๋ฅธ๋ฐ ๊ฒฐ๊ณผ๋ ๋๊ฐ์ ์ฝ๋๋ฅผ ์ง๋ณด์์ต๋๋ค.
let count = 1; for (let i = 0; i < 6; i++) { count = count + 1; }
- for๋ฌธ์ ์ข ๋ฃ ์กฐ๊ฑด(๋ ๊ฐ)์
i <= 5
์์i < 6
์ผ๋ก ๋ณ๊ฒฝํ์์ต๋๋ค.
- ์ฝ๋์์
<=
์5
๋ฅผ ์์ ํด์ ์ง์ ํ์ธํด๋ณด์ธ์.- 6๋ณด๋ค ์์๋๊น์ง ์คํํ๊ณ for๋ฌธ์ด ๋๋๊ธฐ ๋๋ฌธ์,
- i ๊ฐ 0, 1, 2, 3, 4, 5์ผ๋๋ง ์คํํ์ฌ ๊ฒฐ๊ตญ for๋ฌธ์ ๋ฐ๋ณตํ๋ ํ์๋ ๋๊ฐ์ต๋๋ค.
๐ป ๋ฐ๋ณต๋ฌธ ๋ด๋ถ์ ์กฐ๊ฑด๋ฌธconst home = "๋์ "; let cities = ["์์ธ", "๋์ ", "๋๊ตฌ", "๋ถ์ฐ", "๊ด์ฃผ", "์ ์ฃผ๋"]; for (let i = 0; i <= 5; i++) { if (cities[i] === home) { console.log("์, "+ cities[i] +" ์ฌ์๋๊ตฐ์"); } }
- i๊ฐ 0์ผ ๋๋
cities[0]
๊ณผhome
์ ๋น๊ตํฉ๋๋ค.- "์์ธ" === "๋์ "
- ๊ฐ์ง ์์ผ๋ฏ๋ก if๋ฌธ {} ๋ด๋ถ๋ก ๋ค์ด๊ฐ์ง ์๊ณ i๊ฐ 0์ผ๋์ for๋ฌธ์ ๋๋ฉ๋๋ค.
- ๊ทธ ๋ค์์ i๊ฐ 1์ด ์ฆ๊ฐํ์ฌ i๊ฐ 1์ด ๋๋ฉด, cities[1]๊ณผ home์ ๋น๊ตํ๊ฒ ๋๊ณ ,
- "๋์ " === "๋์ "
- ์ฐธ์ด๋ฏ๋ก if๋ฌธ์ด ์คํ๋์์ต๋๋ค.
- ์ด๋ ๊ฒ i๊ฐ 5๊ฐ ๋ ๋๊น์ง if ์กฐ๊ฑด์ ํ์ธํ๋ฉฐ for๋ฌธ์ด ์คํ๋๊ณ ์ข ๋ฃ ์กฐ๊ฑด์ ๋ง์กฑํ๋ฉด ๋ฐ๋ณต์ด ๋ง๋ฌด๋ฆฌ๋ฉ๋๋ค.
- ๋ง์ฝ ๋ฐฐ์ด์ด ์๋์ ๊ฐ์๋ค๋ฉด console.log๊ฐ ์ธ๋ฒ ๋ด์ ๊ฒ์ ๋๋ค.
var cities = ["์์ธ", "๋์ ", "๋๊ตฌ", "๋์ ", "๊ด์ฃผ", "๋์ "];
- for๋ฌธ์์ i๊ฐ 1, 3, 5์ผ ๋ if๋ฌธ์ด ์คํ๋๋ ๊ฒ์ด์ฃ .
๐ป ๋ฐ๋ณต๋ฌธ์ ๋ค์ํ ํ์ฉ
- ๋ ๋ค์ํ ๋ฐ๋ณต์กฐ๊ฑด์ ํ ๋ฒ ๋ด ์๋ค.
- ๋ค๋ฅธ ๊ฒ์ ๋น์ทํด ๋ณด์ด๋๋ฐ, ์ฆ๊ฐ ๊ฐ์ด
i++
์ผ๋ก 1์ฉ ์ฆ๊ฐํ๋๊ฒ ์๋๋ผi = i + 2
๋ผ๊ณ ์์ฑ๋์ด ์๋ค์.for (var i = 2; i < 10; i = i + 2)
- i ๋ 2๋ถํฐ ์์ํ์ฌ
- 10๋ณด๋ค ์์๋๊น์ง
- 2์ฉ ์ฆ๊ฐ์ํค๋ฉด์ for๋ฌธ์ ๋๋ฆฐ๋ค.
- i๊ฐ 2,4,6,8 ์ผ๋ก 2์ฉ ์ฆ๊ฐํ๋ฉฐ for๋ฌธ์ ์ด 4๋ฒ ๋ฐ๋ณตํฉ๋๋ค.
- i ๋ for๋ฌธ์ ๋๋ฉฐ ๊ณ์ ๋ณํ๋ ๊ฐ์ ๋๋ค.
- for๋ฌธ ์กฐ๊ฑด์ ๋ง์ง๋ง์
i = i + 2
๋ ์๋์ i ์ 2์ฉ ๋ํ๋ค๋ ๋ป์ด๋ฏ๋ก for ๋ฌธ์ด ํ ๋ฒ ๋ ๋๋ง๋ค i ๋ 2์ฉ ์ฆ๊ฐํ๋ ๊ฒ์ ๋๋ค.
- ๋ ๋ค๋ฅธ ์์๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
for (var i = 10; i > 7; i--)
- i๋ 10๋ถํฐ ์์ํ์ฌ
- 7๋ณด๋ค ํด๋๊น์ง (7๋ณด๋ค ํด ๋์๋ง)
- 1์ฉ ๊ฐ์ํ๋ฉด์ for๋ฌธ ์์ ์ฝ๋๋ฅผ ์คํ์ํจ๋ค.
- i๊ฐ 10, 9, 8 ์ผ๋ก 1์ฉ ๊ฐ์ํ๋ฉฐ for๋ฌธ์ ์ด 3๋ฒ ๋ฐ๋ณตํ๋ค.
๐ป ๋ฐ๋ณต๋ฌธ๊ณผ ๋ฐฐ์ด
- ๋ค์ ํ ๋ฒ ์ฒ์ ๋ดค๋ ์ฝ๋๋ฅผ ๋ณด๊ฒ ์ต๋๋ค.
cities
๋ฐฐ์ด์ ๊ธธ์ด๋ 4์ด๋ฏ๋ก, for๋ฌธ์ 4๋ฒ ๋๋ฆฌ๊ณ ์ถ์ด์ i ๊ฐ 0๋ถํฐ 3๊น์ง 0,1,2,3 ์ผ๋ก ์ด 4๋ฒ ์คํํ ์ ์๋๋ก ์กฐ๊ฑด์ ์์ฑํ์์ต๋๋ค.const home = "๋์ "; let cities = ["์์ธ", "๋์ ", "๋๊ตฌ", "๋ถ์ฐ"]; for (let i = 0; i <= 3; i++) { if (cities[i] === home) { console.log("์, "+ cities[i] +" ์ฌ์๋๊ตฐ์"); } }
- ํ์ง๋ง ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ๋ฐฐ์ด์ ๊ธธ์ด๊ฐ ์ผ๋ง๋ ๋๋์ง ์ ์์ง ๋ชปํฉ๋๋ค. ํ๋ก ํธ์๋ ์ฝ๋์์ ์ง์ ๋ฐฐ์ด์ ์์ฑํ์ง ์๊ณ ์ธ๋ถ์์ ๋ฐ๋ ๊ฒฝ์ฐ๊ฐ ์๊ณ ๋๋ฌด ๋ฐฐ์ด์ด ๊ธธ์ด์ ๋์ ํ ๊ธธ์ด๋ฅผ ์ ์ ์๋ ๊ฒฝ์ฐ๋ ์์ต๋๋ค.
- ์ด๋ฐ ๊ฒฝ์ฐ, ๋ฐฐ์ด์ ๊ธธ์ด๊ฐ ์ผ๋ง๋ ๋๋์ง ์ ์ ์๋ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ์๋ฉด ๊ทธ๋งํผ for๋ฌธ์ ๋ฐ๋ณตํ๋ฉด ๋๊ฒ ์ฃ . ๋ฐฐ์ด์๋
length
๋ผ๋ ์์ฑ์ด ์์ต๋๋ค.let cities = ["์์ธ", "๋์ ", "๋๊ตฌ", "๋์ ", "๊ด์ฃผ", "๋์ "]; console.log(cities.length) // cities ๋ฐฐ์ด์ ์์๋ ์ด 6๊ฐ ์ด๋ฏ๋ก 6 ์ด๋ผ๋ ์ซ์๊ฐ ๋ฐํ๋ฉ๋๋ค. for (var i = 0; i < cities.length; i++) { if (cities[i] === home) { alert("์, ์ฌ๊ธฐ ์ฌ์๋๊ตฐ์"); } }
- for (var i = 0; i < cities.length; i++)
- ๊ฐ์ด๋ฐ ๋น๊ต์ฐ์ฐ์๋ฅผ ์ฃผ์ํ์ธ์. <= ๊ฐ ์๋ <๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๋ค.
- ๋ฐฐ์ด์ ๊ธธ์ด๋ 6์ด๋ฏ๋ก ์ด 6๋ฒ์ ๋ฐ๋ณต๋ฌธ์ด ์คํ๋์ด์ผ ํฉ๋๋ค.
- i๋ 0๋ถํฐ 5๊น์ง ์ด 6๋ฒ์ด ์คํ๋์ด์ผ ํ๋ฏ๋ก ๋ฐฐ์ด์ ๊ธธ์ด๋ณด๋ค ์์๋๊น์ง ๋ฐ๋ณต๋ฌธ์ ์คํํฉ๋๋ค.
- ๋ง์ฝ <= ์๊ฑฐ๋ ๊ฐ๋ค๋ ๋น๊ต์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ๋ฉด
- i๋ 0,1,2,3,4,5,6 ๊น์ง ์คํ๋์ด ์ด 7๋ฒ์ ๋ฐ๋ณต๋ฌธ์ ์คํํฉ๋๋ค.
๐ Assignment
- findSmallestElement ํจ์๋ฅผ ๊ตฌํํด ์ฃผ์ธ์.
- findSmallestElement ์ arr ์ธ์๋ ์ซ์ ๊ฐ์ผ๋ก๋ง ์ด๋ฃจ์ด์ง array ์ ๋๋ค.
- array ์ ๊ฐ๋ค ์ค ๊ฐ์ฅ ์์ ๊ฐ์ ๋ฆฌํดํด์ฃผ์ธ์.
- ๋ง์ผ array๊ฐ ๋น์ด์์ผ๋ฉด 0์ ๋ฆฌํดํด์ฃผ์ธ์.
- ์๋ฅผ ๋ค์ด, ๋ค์๊ณผ ๊ฐ์ array์ด ์ธ์(input)์ผ๋ก ๋ค์ด์๋ค๋ฉด 1์ด ๋ฆฌํด๋์ด์ผ ํฉ๋๋ค.
[20, 200, 23, 1, 3, 9]
function findSmallestElement(arr) { if(arr.length === 0) { return 0; //๋ฐฐ์ด์ ๊ธธ์ด๊ฐ 0, ์ฆ ๋ฐฐ์ด์ด ๋น์ด์๋ค๋ฉด, 0์ ๋ฐํ. } else { let min = arr[0]; for ( i = 0; i < arr.length; i++) { /* ๋ฐฐ์ด์ ๊ธธ์ด๋ฅผ ์ ์ ์์ผ๋ฏ๋ก, ๋ฐฐ์ด์ ๊ธธ์ด๋งํผ ๊น์ง for๋ฌธ์ ๋ฐ๋ณตํ๋ค. */ if (arr[i] < min) { //๊ทธ๋ฆฌ๊ณ ๋ฐฐ์ด์ ํ๋์ฉ ์๋ก ๋น๊ตํ๋ if๋ฌธ. min = arr[i]; } } return min; } } findSmallestElement([3, 20, 50, 60, 99, 2]); //๊ฒฐ๊ณผ๋ 2
์ต์๊ฐ์ ์ฐพ์๋ด๊ธฐ ์ํ for๋ฌธ๊ณผ if๋ฌธ์ ์์ฑํ๋๊ฒ ๋๋ฌด ์ด๋ ค์ ๋ค.
์ต๋๊ฐ, ์ต์๊ฐ ์ฐพ๋ ๋ฐฉ๋ฒ