๐Ÿ“Œ 1. ๋ฌธ์ œ


[Programmers, Level1] ํ•ธ๋“œํฐ ๋ฒˆํ˜ธ ๊ฐ€๋ฆฌ๊ธฐ


ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ชจ๋ฐ”์ผ์€ ๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ๋ฅผ ์œ„ํ•ด ๊ณ ์ง€์„œ๋ฅผ ๋ณด๋‚ผ ๋•Œ ๊ณ ๊ฐ๋“ค์˜ ์ „ํ™”๋ฒˆํ˜ธ์˜ ์ผ๋ถ€๋ฅผ ๊ฐ€๋ฆฝ๋‹ˆ๋‹ค. ์ „ํ™”๋ฒˆํ˜ธ๊ฐ€ ๋ฌธ์ž์—ด phone_number๋กœ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ „ํ™”๋ฒˆํ˜ธ์˜ ๋’ท 4์ž๋ฆฌ๋ฅผ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ ์ˆซ์ž๋ฅผ ์ „๋ถ€ *์œผ๋กœ ๊ฐ€๋ฆฐ ๋ฌธ์ž์—ด์„ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.


์ œํ•œ ์กฐ๊ฑด
s๋Š” ๊ธธ์ด 4 ์ด์ƒ, 20์ดํ•˜์ธ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.


phone_number return
โ€œ01033334444โ€ โ€*******4444โ€
โ€œ027778888โ€ โ€******8888โ€


โœ ํ’€์ด

function solution(phone_number) {
  const num = phone_number.length - 4;
  let arr = [phone_number.slice(phone_number.length - 4, phone_number.length)];
  for (let i = 0; i < num; i++) {
    arr.unshift("*");
  }
  return arr.join("");
}

๐Ÿ‘ Best

function hide_numbers(s) {
  var result = "*".repeat(s.length - 4) + s.slice(-4);
  return result;
}


  • ๋งˆ์ง€๋ง‰ index-4๋ฒˆ์งธ ~ ๋งˆ์ง€๋ง‰ index๊นŒ์ง€ ๋จผ์ € ๋ฐฐ์—ด์— ๋„ฃ์–ด๋‘๊ณ  for๋ฌธ์„ ๋Œ๋ฆฌ๋ฉด์„œ ๋ฐฐ์—ด์˜ ๋งจ ์•ž์œผ๋กœ โ€œ*โ€œ์ด ๋“ค์–ด๊ฐ€๊ฒŒ unshift๋ฉ”์†Œ๋“œ๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค.
  • Best ์ฝ”๋“œ๋Š” repeat์„ ์‚ฌ์šฉํ•˜์—ฌ โ€œ*โ€œ์ด ๋ฐ˜๋ณต๋˜๊ฒŒ ํ•˜์˜€๋‹ค. ๊ฐ™์€ ๋ฌธ์ž์—ด์ด๋‹ˆ๊นŒ repeat ์‚ฌ์šฉํ•  ๊ป„ ๊ดœํžˆ for๋ฌธ์œผ๋กœ ๋Œ๋ ธ๋‹ค๋Š” ์ƒ๊ฐ..