๐ฉ๐ป๐ป๋ฌธ์ ๋งํฌ
[ํ๋ก๊ทธ๋๋จธ์ค 12951] JadenCase ๋ฌธ์์ด ๋ง๋ค๊ธฐ (Javascript)
๋ฌธ์ ์ค๋ช
JadenCase๋ ๋ชจ๋ ๋จ์ด์ ์ฒซ ๋ฌธ์๊ฐ ๋๋ฌธ์์ด๊ณ , ๊ทธ ์ธ์ ์ํ๋ฒณ์ ์๋ฌธ์์ธ ๋ฌธ์์ด์
๋๋ค. ๋ฌธ์์ด s๊ฐ ์ฃผ์ด์ก์ ๋, s๋ฅผ JadenCase๋ก ๋ฐ๊พผ ๋ฌธ์์ด์ ๋ฆฌํดํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์.
์ ํ ์กฐ๊ฑด
s๋ ๊ธธ์ด 1 ์ด์์ธ ๋ฌธ์์ด์
๋๋ค.
s๋ ์ํ๋ฒณ๊ณผ ๊ณต๋ฐฑ๋ฌธ์(" ")๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
์ฒซ ๋ฌธ์๊ฐ ์๋ฌธ์ด ์๋๋์๋ ์ด์ด์ง๋ ์๋ฌธ์ ์๋ฌธ์๋ก ์๋๋ค. ( ์ฒซ๋ฒ์งธ ์
์ถ๋ ฅ ์ ์ฐธ๊ณ )
์
์ถ๋ ฅ ์
s return
"3people unFollowed me" "3people Unfollowed Me"
"for the last week" "For The Last Week"
โ๏ธIdea Sketch
2021-06-24
1. ๋ฌธ์์ด ๊ณต๋ฐฑ ๊ธฐ์ค์ผ๋ก split() --> arr ์์ฑ
2. ๊ฐ arr ์์์ ์ฒซ๋ฒ์งธ ๊ธ์๋ str.toUpperCase()
3. str.toUpperCase() ๋๋ฌธ์ ๋ณํ
const sentence = 'The quick brown fox jumps over the lazy dog.';
console.log(sentence.toUpperCase()); // output: "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG."
4. ์ฒซ ๋ฌธ์๊ฐ ์๋ฌธ์ด ์๋๋์๋ ์ด์ด์ง๋ ์๋ฌธ์ ์๋ฌธ์๋ก ์๋๋ค.
- str.toUpperCase()๋ str์ ์๋ฌธ์ด ์๋ ๋ฌธ์๊ฐ ํฌํจ๋ ๊ฒฝ์ฐ, ๊ทธ ๋ฌธ์ ๊ทธ๋๋ก ๋ฆฌํดํจ
4. arr.map() ์ฌ์ฉ
- ์๋์ฒ๋ผ ์์ฑํ ๊ฒฝ์ฐ, ๋๋ฌธ์ ์ ํ์ด ์ ์ฉ๋์ง ์์
arr.map(v => {
v[0] = v[0].toUpperCase();
return v;
})
5. arr.splice() ๋๋ arr.slice() ์ฌ์ฉํ์ฌ return
- ๋ฌธ์์ด ๋ณต์ฌ๊ฐ ๊ฐ๋ฅํ arr.slice() ์ฌ์ฉ
- str.toLowerCase() ์ฌ์ฉ
6. array.splice(index, ์ ๊ฑฐํ ์์์ ๊ฐ์, ์ถ๊ฐํ ์์)
- ๋ฐฐ์ด ์์๋ฅผ ์ญ์ /๊ต์ฒด/์ถ๊ฐ
- ์๋ณธ์ด ๋ฐ๋
- ๋ฐฐ์ด ๋์
const months = ['Jan', 'March', 'April', 'June'];
months.splice(1, 0, 'Feb'); // index 1์ 'Feb' ์ถ๊ฐ (0๊ฐ ์ ๊ฑฐ)
console.log(months); // output: ["Jan", "Feb", "March", "April", "June"]
months.splice(4, 1, 'May'); // index 4๋ฅผ 'May'๋ก ๋์ฒด (1๊ฐ "June" ์ ๊ฑฐ)
console.log(months); // output: ["Jan", "Feb", "March", "April", "May"]
7. array.slice(begin, end)
- ๋ฐฐ์ด ์ธ๋ฑ์ค begin๋ถํฐ end๊น์ง ์์ ๋ณต์ฌ๋ณธ์ ๋ฐํ
- ๋ณต์ฌ๋๊น ์๋ณธ์ ๋ฐ๋์ง ์์
- end ๋ฐ๋ก ์ ๊น์ง ๋ณต์ฌํ๋ฉฐ, end๊ฐ ์์ผ๋ฉด ๋๊น์ง ๋ณต์ฌ
- ๋ฐฐ์ด, ๋ฌธ์์ด ๋์
const animals = ['ant', 'bison', 'camel', 'duck', 'elephant'];
console.log(animals.slice(2)); // output: ["camel", "duck", "elephant"]
console.log(animals.slice(2, 4)); // output: ["camel", "duck"] --> index 4์ธ 'elephant' ๋ฏธํฌํจ
console.log(animals.slice(1, 5)); // output: ["bison", "camel", "duck", "elephant"]
console.log(animals.slice(-2)); // output: ["duck", "elephant"]
console.log(animals.slice(2, -1)); // output: ["camel", "duck"] --> index -1์ธ 'elephant' ๋ฏธํฌํจ
2021-06-24
1. s๋ก ์ ๋ ฅ๋ฐ๋ ๋ชจ๋ ๊ณต๋ฐฑ์ ๋ณํ๋ ๋ฌธ์์ ๊ผญ ๋ฐ์ ํด์ฃผ์ ์ผ ํฉ๋๋ค!!
- ์๋์ ๊ฐ์ด ๊ณต๋ฐฑ์ด ์ฌ๋ฌ ๊ฐ์ธ ํ ์คํธ์ผ์ด์ค๋ ์กด์ฌ
const str = " 3people unFollowed me"
let arr = str.split(' ');
console.log(arr) // output ('' ์๋ณด๋ฉด ๊ณต๋ฐฑ์์): [ '', '', '3people', '', '', 'unFollowed', '', '', 'me' ]
arr = arr.join(' ')
console.log(arr) // output (str๊ณผ ์ผ์น): " 3people unFollowed me"
2. ๊ณต๋ฐฑ์ธ์ง ์๋์ง ํ์ธํ๋ ์กฐ๊ฑด๋ฌธ ์ถ๊ฐ
โ๏ธ์์ค์ฝ๋
2021-06-24 ์ ํ์ฑ 43.8์
function solution(s) {
return s.split(' ').map(v => {
return v[0].toUpperCase() + v.slice(1).toLowerCase();
}).join(' ');
}
2021-06-24 ์ ํ์ฑ ํต๊ณผ ๋ฌด๋ ค +13์
function solution(s) {
return s.split(' ').map(v => {
if (v === '') return v;
return v[0].toUpperCase() + v.slice(1).toLowerCase();
}).join(' ');
}
โ๏ธ๋ช ๋ต
function solution(s) {
return s.split(" ").map(v => v.charAt(0).toUpperCase() + v.substring(1).toLowerCase()).join(" ");
}
1. str.charAt(index) : ๋ฌธ์์ด์์ ํน์ ์ธ๋ฑ์ค์ ์์นํ๋ ๋จ์ผ๋ฌธ์๋ฅผ ๋ฐํ
const str = 'The quick brown fox';
const index = 4;
console.log(str.charAt(index)); // output: "q"
2. str.substring(begin, end) : ๋ฌธ์์ด์ ์์ ์ธ๋ฑ์ค๋ก๋ถํฐ ์ข ๋ฃ ์ธ๋ฑ์ค ์ง์ ๊น์ง ๋ถ๋ถ ๋ฌธ์์ด์ ๋ฐํ
- end๊ฐ ์์ผ๋ฉด ๋ฌธ์์ด ๋๊น์ง ๋ฐํ
const str = 'Mozilla';
console.log(str.substring(1, 3)); // output: "oz"
console.log(str.substring(2)); // output: "zilla"