ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ๋ฌธ์ž์—ด ์„ž๊ธฐ - js (js map() ๋ฉ”์†Œ๋“œ)

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() ๋ฉ”์†Œ๋“œ๋Š” ์œ„์˜ ์ฝ”๋“œ์—์„œ์™€ ๊ฐ™์ด ํŠน์ • ์ˆซ์ž๋ฅผ ๊ณฑํ•˜๊ฑฐ๋‚˜, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ํ•„์š”ํ•œ ๋‹ค๋ฅธ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋“ฑ ์š”์†Œ์— ์–ด๋–ค ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ ์šฉํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค.