-
Daily Coding 6codeStates front-end/Algorithm 2023. 1. 19. 19:25๋ฐ์ํ
๐๋ฌธ์ 6( letterCapitalize )
๋ฌธ์์ด์ ์ ๋ ฅ๋ฐ์ ๋ฌธ์์ด์ ๊ตฌ์ฑํ๋ ๊ฐ ๋จ์ด์ ์ฒซ ๊ธ์๊ฐ ๋๋ฌธ์์ธ ๋ฌธ์์ด์ ๋ฆฌํดํด์ผ ํฉ๋๋ค.
๐ฅ์ ๋ ฅ
์ธ์1 : str
string ํ์ ์ ๊ณต๋ฐฑ์ด ์๋ ์ํ๋ฒณ ๋ฌธ์์ด
๐ค ์ถ๋ ฅ
string ํ์ ์ ๋ฆฌํด
โ๏ธ์ฃผ์์ฌํญ
- ๋จ์ด๋ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํฉ๋๋ค.
- ์ฐ์๋ ๊ณต๋ฐฑ์ด ์กด์ฌํ ์ ์์ต๋๋ค.
- ๋น ๋ฌธ์์ด์ ์ ๋ ฅ๋ฐ์ ๊ฒฝ์ฐ, ๋น ๋ฌธ์์ด์ ๋ฆฌํดํด์ผ ํฉ๋๋ค.
๋์ ์๊ฐ
๋ฌธ์์ด์ ๊ตฌ์ฑํ๋ ๊ฐ ๋จ์ด : split()
๋จ์ด๋ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ : ๋ฌธ์์ด์ ์์ฑํด split(' ') ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด์ค
์ฒซ๊ธ์๋ฅผ ๋๋ฌธ์๋ก ๋ฆฌํด : ๋จ์ด์ ๊ธธ์ด๊ฐ ๋ค๋๋ ๋ ๊น์ง ์ฒซ๋ฒ์งธ ๋จ์ด์ ์ํ๋ฒณ์ touppercase()
๋ฌธ์์ด์ ๋ฆฌํด : ๋ค์ ์๋ก์ด ๋ฌธ์์ด์ ๋ผ๋ ค๋ฉด ์ ๋ฒ์ ๋ฐฐ์ ๋ join ํจ์ ์ฐ๊ธฐ
๋์ ์ฝ๋
function letterCapitalize(str) { let words = str.split(' '); for(let i=0;i<words.length;i++) { if(words[i].length > 0){ words[i] = words[i][0].toUpperCase() } } str = words.join(' '); return str }
์ญ?? ๊ทผ๋ฐ ์คํ๊ฒฐ๊ณผ ํต๊ณผ๋ฅผ ๋ชปํ๋ค
๊ณ์ ๊ณ ๋ฏผํ๋ค๊ฐ ๋ํผ๋ฐ์ค๋ฅผ ๋ดค๋ค
function letterCapitalize(str) { let words = str.split(' '); for(let i=0;i<words.length;i++) { if(words[i].length > 0){ words[i] = words[i][0].toUpperCase() + words[i].substr(1); } } str = words.join(' '); return str }
+ words[i].substr(1);
์ด๊ฒ ๋ญ์ง ๋ด๋ ๋ชจ๋ฅด๊ฒ ๋ค
substr() ํจ์๋, ํ๋ผ๋ฏธํฐ๋ก ์ ๋ ฅ๋ฐ์ start index๋ถํฐ length ๊ธธ์ด๋งํผ string์ ์๋ผ๋ด์ด ๋ฐํํ๋ ํจ์์ ๋๋ค..
์ด๊ฑธ ๋ชฐ๋๋ค
์ฒซ๋ฒ์งธ ๊ธ์ ํ๋๋ฅผ ๋ฆฌํด ํด์ผํ๊ธฐ ๋๋ฌธ์ substr(1) ํจ์๋ฅผ ์จ์ผํ๋ ๊ฒ! ๋ํ๋๋ฐฐ์ ๋น
๋ฐ์ํ'codeStates front-end > Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Daily Coding 8 (0) 2023.01.25 Daily Coding 7 (0) 2023.01.20 Daily Coding 5 (0) 2023.01.18 Daily Coding 4 (0) 2023.01.17 Daily Coding 3 (4) 2023.01.16