โญ๏ธ ์๊ณ ๋ฆฌ์ฆ(8) : ์์ธ์์ ๊น์๋ฐฉ ์ฐพ๊ธฐ _ Lv.1 โญ๏ธ
01. ๋ฌธ์ ์ค๋ช
๐งฉ Stringํ ๋ฐฐ์ด seoul์ element์ค "Kim"์ ์์น x๋ฅผ ์ฐพ์, "๊น์๋ฐฉ์ x์ ์๋ค"๋ String์ ๋ฐํํ๋ ํจ์, solution์ ์์ฑํ์ธ์.
๐งฉ seoul์ "Kim"์ ์ค์ง ํ ๋ฒ๋ง ๋ํ๋๋ฉฐ ์๋ชป๋ ๊ฐ์ด ์
๋ ฅ๋๋ ๊ฒฝ์ฐ๋ ์์ต๋๋ค.
๐งฉ ์๋ฅผ ๋ค์ด seoul = ["Jane", "Kim"] "๊น์๋ฐฉ์ 1์ ์๋ค"๋ฅผ ๋ฐํํ๋ฉด ๋ฉ๋๋ค.
๐ ์ ํ ์กฐ๊ฑด : โ๏ธ seoul์ ๊ธธ์ด 1 ์ด์, 1000 ์ดํ์ธ ๋ฐฐ์ด์
๋๋ค. โ๏ธ seoul์ ์์๋ ๊ธธ์ด 1 ์ด์, 20 ์ดํ์ธ ๋ฌธ์์ด์
๋๋ค. โ๏ธ "Kim"์ ๋ฐ๋์ seoul ์์ ํฌํจ๋์ด ์์ต๋๋ค.
02. " solution.js " ๋ฌธ์ ํ์ด๋ณด๊ธฐ
๐ก ๋ฐฐ์ด์์ "kim"์ ์ธ๋ฑ์ค๋ฅผ ์ฐพ์์ ์์์ ๊ฐ์ ์ถ๋ ฅํด๋ณด์.
const seoul = ["Jane", "Kim"];
function solution(location) {
return `๊น์๋ฐฉ์ ${location.indexOf("Kim")}์ ์๋ค`;
}
console.log(solution(seoul))
___ ์ฐธ๊ณ ํ๊ธฐ ___
`1 Array.prototype.indexOf( ) : ๋ฐฐ์ด์์ ์ง์ ๋ ์์๋ฅผ ์ฐพ์ ์ ์๋ ์ฒซ ๋ฒ์งธ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํ๊ณ ์กด์ฌํ์ง ์์ผ๋ฉด -1์ ๋ฐํํฉ๋๋ค.
์ฐพ๋ ๋์์ด ๊ฐ์ฒด์ผ ๊ฒฝ์ฐ ๋๋ ์ด๋ค ์กฐ๊ฑด์ ๋ง์กฑํ๋ ๊ฐ์ ์ฐพ์ ๊ฒฝ์ฐ์๋ ๊ฐ์ ์ฐพ๊ธฐ ์ด๋ ต๊ธฐ ๋๋ฌธ์, ์ด๋ฐ ๊ฒฝ์ฐ๋ findIndex( )๋ฅผ ์ฌ์ฉํฉ๋๋ค.
03. ๋ค๋ฅธ ํ์ด ์์๋ณด๊ธฐ
# 1) findIndex( ) ํ์ฉํ๊ธฐ
const seoul = ["Jane", "Kim"];
let solution = (location) => `๊น์๋ฐฉ์ ${location.findIndex(s => s === 'Kim')}์ ์๋ค`;
// function ์๋ต, ํ์ดํ ํจ์, return ์๋ต
console.log(solution(seoul))
___ ์ฐธ๊ณ ํ๊ธฐ ___
`1 Array.prototype.findIndex( ) : ์ฃผ์ด์ง ํ๋ณ ํจ์๋ฅผ ๋ง์กฑํ๋ ๋ฐฐ์ด์ ์ฒซ ๋ฒ์งธ ์์์ ๋ํ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํฉ๋๋ค. ๋ง์กฑํ๋ ์์๊ฐ ์์ผ๋ฉด -1์ ๋ฐํํฉ๋๋ค.
# 2) for๋ฌธ๊ณผ if๋ฌธ ํ์ฉํ๊ธฐ
const seoul = ["Jane", "Kim"];
function solution(location){
let idx = 0;
for (let i=0; i<location.length; i++){
if (location[i] === 'Kim'){
idx += i;
break; // ์ข
๋ฃ๋์์ ๋ i์ ๊ฐ : 1
}
}
return "๊น์๋ฐฉ์ " + idx + "์ ์๋ค";
}
console.log(solution(seoul))
___ ์ฐธ๊ณ ํ๊ธฐ ___
`1 for๋ฌธ : ๊ดํธ ์์ ์์ ๋ฐ๋ณต ์คํํฉ๋๋ค.
`2 if๋ฌธ : if๋ฌธ์ ์ง์ ํ ์กฐ๊ฑด์ด ์ฐธ์ธ ๊ฒฝ์ฐ ๋ช
๋ น๋ฌธ(statement)์ ์คํํฉ๋๋ค. ์กฐ๊ฑด์ด ๊ฑฐ์ง์ธ ๊ฒฝ์ฐ ๋ ๋ค๋ฅธ ๋ช
๋ น๋ฌธ์ด ์คํ๋ ์ ์์ต๋๋ค.
'Algorithm_JS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์๊ณ ๋ฆฌ์ฆ(10) : ์๋ฆฟ์ ๋ํ๊ธฐ _ Lv.1 (1) | 2022.11.06 |
---|---|
์๊ณ ๋ฆฌ์ฆ(9) : ๋๋จธ์ง๊ฐ 1์ด ๋๋ ์ ์ฐพ๊ธฐ _ Lv.1 (4) | 2022.11.04 |
์๊ณ ๋ฆฌ์ฆ(7) : ๊ฐ์ด๋ฐ ๊ธ์ ๊ฐ์ ธ์ค๊ธฐ _ Lv.1 (3) | 2022.11.03 |
์๊ณ ๋ฆฌ์ฆ(6) : ๋ฌธ์์ด์ ์ ์๋ก ๋ฐ๊พธ๊ธฐ _ Lv.1 (2) | 2022.11.02 |
์๊ณ ๋ฆฌ์ฆ(5) : ์๋ฐ์๋ฐ์๋ฐ์๋ฐ์๋ฐ์? _ Lv.1 (1) | 2022.10.31 |
๋๊ธ