2023. 7. 24. 18:05ใStudy_Develop/์๊ณ ๋ฆฌ์ฆ | ์ฝ๋ฉํ ์คํธ
ํ๋ก๊ทธ๋๋จธ์ค - ๋ฌธ์์ด ์๊ธฐ - js
๋ฌธ์
๊ธธ์ด๊ฐ ๊ฐ์ ๋ ๋ฌธ์์ด str1๊ณผ str2๊ฐ ์ฃผ์ด์ง๋๋ค.
๋ ๋ฌธ์์ด์ ๊ฐ ๋ฌธ์๊ฐ ์์์๋ถํฐ ์๋ก ๋ฒ๊ฐ์๊ฐ๋ฉด์ ํ ๋ฒ์ฉ ๋ฑ์ฅํ๋ ๋ฌธ์์ด์ ๋ง๋ค์ด return ํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.
์ ํ ์ฌํญ
1 ≤ str1์ ๊ธธ์ด = str2์ ๊ธธ์ด ≤ 10
str1๊ณผ str2๋ ์ํ๋ฒณ ์๋ฌธ์๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด์
๋๋ค.
์ ์ถ๋ ฅ ์
str1 | str2 | result |
"aaaaa" | "bbbbb" | "ababababab" |
solution.js
function solution(str1, str2) {
return [...str1].map((a, i) => a+str2[i]).join("")
}
ํด์ค
- return [...str1] : ์ด ํจ์๋ ์คํ๋ ๋ ๊ตฌ๋ฌธ(...)์ ์ฌ์ฉํ์ฌ str1์ ๊ฐ๋ณ๋ฌธ์ ๋ฐฐ์ด๋ก ๋ณํํ๋ค. ์ด ๋จ๊ณ์์๋ ๋ฐฐ์ด๋ก ์กฐ์ ๊ฐ๋ฅํ๋ค.
- .map((a, i) => a+ str2[i]) : map ()๋ฉ์๋๋ str1์์ ์์ฑ๋ ๋ฌธ์ ๋ฐฐ์ด์์ ํธ์ถ๋๋ค. ์ธ๋ฑ์ค i์์ ๊ฐ ๋ฌธ์ a๋ฅผ ๋ฐ๋ณตํ๋ค.
- map()์ฝ๋ฐฑ ํจ์ ๋ด์์ ์ธ๋ฑ์ค i์ ์๋ str์ ํ์ฌ ๋ฌธ์ a๋ str2[i]๋ฅผ ์ฌ์ฉํ์ฌ str2์ ๋์ผํ ์ธ๋ฑ์ค์ ์๋ ๋ฌธ์์ ์ฐ๊ฒฐ๋๋ค.
js.map() ํจ์ ์ฌ์ฉ ๋ฐฉ๋ฒ (๋ฐฐ์ด ๋ฉ์๋)
์ด๋ค ๋ฐฐ์ด์ ์๋ ๋ชจ๋ ์์๋ค์ ๊ฐ์ ๋ณ๊ฒฝํด์ ๋ง๋ ์๋ก์ด ๋ฐฐ์ด์ ์จ์ผ ํ ๋๊ฐ ์๋ค.
๊ทธ ๋ ๋ฃจํ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฐ์ด์ ๋ํด ์๋์ผ๋ก ๋ฐ๋ณต ์ฒ๋ฆฌํ๋ ๋์ , ๊ฐ๋จํ ๊ธฐ๋ณธ ์ ๊ณต Array.map() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.
์ด Array.map() ๋ฉ์๋๋ ์ฝ๋ฐฑ ํจ์๋ฅผ ์ด์ฉํด ๊ฐ๊ฐ์ ์์์ ํธ์ถํด์ ๊ทธ ๊ฐ์ ๋ณํํ ์ ์๊ฒ ํด์ค๋ค. ๋ค์ ๋งํ์๋ฉด ์ฝ๋ฐฑ ํจ์๋ ๋ฐฐ์ด์ ๊ฐ ์์์ ์คํ๋๋ค.
let arr = [3, 4, 5, 6];
for (let i = 0; i < arr.length; i++){
arr[i] = arr[i] * 3;
}
console.log(arr); // [9, 12, 15, 18]
-> for ๋ฃจํ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฐ์ด์ ๋ํด ๋ฐ๋ณต ์ฒ๋ฆฌ
let arr = [3, 4, 5, 6];
let modifiedArr = arr.map(function(element){
return element *3;
});
console.log(modifiedArr); // [9, 12, 15, 18]
-> map()๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฐ์ด์ ๋ํด ๋ฐ๋ณต์ฒ๋ฆฌ ํ ๊ฒ
- ์ผ๋ฐ์ ์ผ๋ก Array.map() ๋ฉ์๋๋ ์์ ์ฝ๋์์์ ๊ฐ์ด ํน์ ์ซ์๋ฅผ ๊ณฑํ๊ฑฐ๋, ์ ํ๋ฆฌ์ผ์ด์ ์ ํ์ํ ๋ค๋ฅธ ์์ ์ ์ํํ๋ ๋ฑ ์์์ ์ด๋ค ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฉํ๋ ๋ฐ ์ฌ์ฉ๋๋ค.