๐ ๋ฌธ์
๋ฌธ์์ด์ ์ ๋ ฅ๋ฐ์ ๋ฌธ์์ด์ ๊ตฌ์ฑํ๋ ๊ฐ ๋จ์ด์ ์ฒซ ๊ธ์๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด์ ๋ฆฌํดํด์ผ ํฉ๋๋ค.
โ ๏ธ ์ฃผ์์ฌํญ
- ๋จ์ด๋ ๊ณต๋ฐฑ ํ ์นธ์ผ๋ก ๊ตฌ๋ถํฉ๋๋ค.
- ์ฐ์๋ ๊ณต๋ฐฑ์ ์๋ค๊ณ ๊ฐ์ ํฉ๋๋ค.
- ๋น ๋ฌธ์์ด์ ์
๋ ฅ๋ฐ์ ๊ฒฝ์ฐ, ๋น ๋ฌธ์์ด์ ๋ฆฌํดํด์ผ ํฉ๋๋ค.
โ๐ป ๋ด ํ์ด
function firstCharacter(str) {
// ์
๋ ฅ: str
// ์ถ๋ ฅ: ๋ฌธ์์ด์ ๊ตฌ์ฑํ๋ ๊ฐ ๋จ์ด์ '์ฒซ ๊ธ์'๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด
// ๋น ๋ฌธ์์ด์ ์
๋ ฅ๋ฐ์ ๊ฒฝ์ฐ, ๋น ๋ฌธ์์ด์ ๋ฆฌํด
if (str === '') {
return '';
}
// ๋น์ด์๋ ๋ฐฐ์ด์ ๋ง๋ค๊ณ , ์ ๋ฌ๋ฐ์ ๋ฌธ์์ด์ space๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ฐ ๋จ์ด๋ก ์๋ผ, ๋ฐฐ์ด์ ์ ์ฅ
let words = str.split(' ');
let result = '';
// ๋ชจ๋ ๋ฌธ์์ด ์ํํด์ 0๋ฒ์งธ ์ธ๋ฑ์ค(=์ฒซ ๋ฒ์งธ ๊ธ์) ์ถ์ถ
for (let i = 0; i < words.length; i += 1) {
result = result + words[i][0];
}
// ์ฒซ ๊ธ์๋ง์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด ๋ฆฌํด
return result;
}
๐ก ์์๋๋ฉด ์ข์ ๊ฐ๋
๋ํ๊ธฐ ํ ๋น (+=)
๋ํ๊ธฐ ํ ๋น ์ฐ์ฐ์๋ ์ค๋ฅธ์ชฝ ํผ์ฐ์ฐ์์ ๊ฐ์ ๋ณ์์ ๋ํ ๊ฒฐ๊ณผ๋ฅผ → ๋ค์ ๋ณ์์ ํ ๋นํ๋ค. ๋ ํผ์ฐ์ฐ์์ ํ์ ์ด ๋ํ๊ธฐ ํ ๋น ์ฐ์ฐ์์ ๋์์ ๊ฒฐ์ ํ๋ฉฐ, ๋ง์ ๋๋ ๋ฌธ์์ด ์ฐ๊ฒฐ๋ ๊ฐ๋ฅํ๋ค. (์ถ์ฒ: mdn)
let a = 2;
let b = 'hello';
// Addition
console.log(a += 3); // 5
// Concatenation
console.log(b += 'world'); // 'hello world'
split ๋ฉ์๋
split() ๋ฉ์๋๋ string ๊ฐ์ฒด๋ฅผ ์ง์ ํ ๊ตฌ๋ถ์๋ฅผ ์ด์ฉํด ์ฌ๋ฌ ๊ฐ์ ๋ฌธ์์ด๋ก ๋๋๋ค. (์ถ์ฒ: mdn)
const str = 'The quick brown fox jumps over the lazy dog.';
const words = str.split(' '); // ๋ฐ์ดํ ์์ ๋์ด์ฐ๊ธฐ O -> ํด๋น ๋จ์ด ๋ฐํ
console.log(words[3]); // 'fox'
const chars = str.split(''); // ๋ฐ์ดํ ์์ ๋์ด์ฐ๊ธฐ X -> ํด๋น ๋ฌธ์ ๋ฐํ
console.log(chars[8]); // 'k'
const strCopy = str.split(); // ๋น ๋ฌธ์์ด -> ๋น ๋ฌธ์์ด์ ํฌํจํ ๋ฐฐ์ด์ ๋ฐํ
console.log(strCopy); // Array ["The quick brown fox jumps over the lazy dog."]
๐ฉ๐ป๐ป ๋ฐฐ์ด ์
๋ํ๊ธฐ ํ ๋น์ ๋ํด ํ์คํ ์๊ณ , split ๋ฉ์๋์ ๋ํด ๋ค์ ํ๋ฒ ๋ณต์ตํ๋ฉฐ ์ ๋ฆฌํ๋ค. ๊ทธ๋์ split ์์ ๋์ด์ฐ๊ธฐ๋ฅผ ๋ฌด์ฌ์ฝ ์ง๋์ณค๋๋ฐ ์ด๋ฒ ๊ธฐํ์ ๋์ด์ฐ๊ธฐ ์ ๋ฌด์ ๋ฐ๋ฅธ ์ฐจ์ด๋ฅผ ํ์คํ ์์๋ค.
๋๊ธ