๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ“‚ Base/์•Œ๊ณ ๋ฆฌ์ฆ˜

์ˆœ์„œ๊ฐ€ ๋’ค์ง‘ํžŒ ๋ฌธ์ž์—ด์„ ๋ฆฌํ„ดํ•˜๊ธฐ

by Dev. Ella 2023. 3. 21.

๐Ÿ“œ ๋ฌธ์ œ

๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„ ์ˆœ์„œ๊ฐ€ ๋’ค์ง‘ํžŒ ๋ฌธ์ž์—ด์„ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

โœ๐Ÿป ๋‚ด ํ’€์ด: for loop ํ™œ์šฉ

function firstReverse(str) {
// ์ž…๋ ฅ: str
// ์ถœ๋ ฅ: ์ˆœ์„œ๊ฐ€ ๋’ค์ง‘ํžŒ ๋ฌธ์ž์—ด

// ์ƒˆ๋กœ ์ƒ์„ฑ๋  ๋ฌธ์ž์—ด์„ ๋‹ด์„ ๋นˆ ๋ฌธ์ž์—ด ๋งŒ๋“ค๊ธฐ
  let result = '';
 
// for loop) ๋ฐ˜๋ณต๋ฌธ์˜ ์‹œ์ž‘์ ์€ ๋ฌธ์ž์—ด์˜ ๋งˆ์ง€๋ง‰ ๋ฌธ์ž์˜ ์ธ๋ฑ์Šค์ธ str.length -1์ž„
// i๊ฐ€ 0๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™์€ ์ฝ”๋“œ๋Š” ๋ฐ˜๋ณต์ ์œผ๋กœ ์ˆ˜ํ–‰๋˜๊ณ , ์ด๋•Œ๋งˆ๋‹ค i์˜ ๊ฐ’์„ ์ค„์ž„
  for (let i = str.length -1; i >= 0; i--) {
    result = result + str[i]; // or result += str[i];
  }
// ๋ฐ˜์ „๋œ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜
  return result;
}

 

โœ๐Ÿป ๋˜๋‹ค๋ฅธ ํ’€์ด: arr.reverse ํ™œ์šฉ

1. split( )์„ ์‚ฌ์šฉํ•˜๋˜, ๋นˆ ๋ฌธ์ž ๊ฐ’์ธ '' ์„ ์‚ฌ์šฉํ•ด ์ž๋ฅธ๋‹ค.

2. ๊ทธ๋ฆฌ๊ณ  ๋ฐฐ์—ด๋กœ ์ €์žฅ๋œ ๊ฐ’์„ ์—ญ์ˆœ์œผ๋กœ ๋ฐ”๊พธ๊ธฐ ์œ„ํ•ด reverse ( ) ํ•จ์ˆ˜๋ฅผ ์ ์šฉํ•œ๋‹ค.

3. ์ดํ›„ join ( )์„ ์‚ฌ์šฉํ•ด ๋‹ค์‹œ ๋ฌธ์ž์—ด๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค. 

function firstReverse(str) {
// ์ž…๋ ฅ: str
// ์ถœ๋ ฅ: ์ˆœ์„œ๊ฐ€ ๋’ค์ง‘ํžŒ ๋ฌธ์ž์—ด

  return str.split('').reverse().join('');
}

 

๐Ÿ’ก ์•Œ์•„๋‘๋ฉด ์ข‹์„ ๊ฐœ๋…

reverse ( )

reverse( ) ๋ฉ”์†Œ๋“œ๋Š” ๋ฐฐ์—ด์˜ ์ˆœ์„œ๋ฅผ ๋ฐ˜์ „ํ•œ๋‹ค. ์ฒซ ๋ฒˆ์žฌ ์š”์†Œ๋Š” ๋งˆ์ง€๋ง‰ ์š”์†Œ๊ฐ€ ๋˜๋ฉฐ, ๋งˆ์ง€๋ง‰ ์š”์†Œ๋Š” ์ฒซ ๋ฒˆ์งธ ์š”์†Œ๊ฐ€ ๋œ๋‹ค. (์ถœ์ฒ˜: mdn)

const a = [1, 2, 3];
console.log(a); // [1, 2, 3]

a. reverse();
console.log(a); // [3, 2, 1]

 

join ( )

join ( ) ๋ฉ”์†Œ๋“œ๋Š” ๋ฐฐ์—ด์˜ ๋ชจ๋“  ์š”์†Œ๋ฅผ ์—ฐ๊ฒฐํ•ด ํ•˜๋‚˜์˜ ๋ฌธ์ž์—ด๋กœ ๋งŒ๋“ ๋‹ค. (์ถœ์ฒ˜: mdn)

const elements = ['Fire', 'Air', 'Water'];

console.log(elements.join()); // "Fire,Air,Water"
console.log(elements.join('')); // "FireAirWater"
console.log(elements.join('-')); // "Fire-Air-Water"

 

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป ๋ฐฐ์šด ์ 

์ฒ˜์Œ์—” for loop๋ฅผ ์‚ฌ์šฉํ•ด ๊ธธ๊ฒŒ ์ผ๋Š”๋ฐ, reverse ๋ฉ”์†Œ๋“œ๋ฅผ ํ™œ์šฉํ•˜๋‹ˆ ํ•œ์ค„๋กœ ๋๋‚ฌ๋‹ค. ๋ฉ”์†Œ๋“œ๋ฅผ ์ ์ ˆํžˆ ํ™œ์šฉํ•˜๊ธธ!

๋Œ“๊ธ€