[ JavaScript ์•Œ๊ณ ๋ฆฌ์ฆ˜ (ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค)] ํ•ธ๋“œํฐ ๋ฒˆํ˜ธ ๊ฐ€๋ฆฌ๊ธฐ

2023. 8. 21. 23:53ใ†5. Algorithm

  • ํ•ธ๋“œํฐ ๋ฒˆํ˜ธ ๊ฐ€๋ฆฌ๊ธฐ

 

1. ๋ฌธ์ œ์„ค๋ช…

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

 

2. ์ž…์ถœ๋ ฅ ์˜ˆ

3. ์ œํ•œ์‚ฌํ•ญ

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

[ ๋‚ด๊ฐ€ํ•œ ๋ฌธ์ œ ํ’€์ด ] 

function solution(phone_number) {
    return phone_number.replace(/\d(?=\d{4})/g, "*");
}

 

* ์ฃผ์„์ถ”๊ฐ€ 

function solution(phone_number) {
    return phone_number.replace(/\d(?=\d{4})/g, "*");
    
    // Replace() (๋ฌธ์ž์—ด ๋ณ€๊ฒฝํ• ๋•Œ ์“ฐ๋Š” ํ•จ์ˆ˜)-> *๋กœ ๋ณ€๊ฒฝํ•œ๋‹ค. 
    // (?=\d{4}): ์ˆซ์ž๊ฐ€ 4๊ฐœ ์—ฐ์†์œผ๋กœ ๋‚˜ํƒ€๋‚˜๋Š” ์ˆซ์ž 
    // /g : ์ „์ฒด์—์„œ ๊ฒ€์ƒ‰ 
    
}

// ์ •๊ทœ์‹์€ ์›น๋ฏธ๋‹ˆ ํ”„๋กœ์ ํŠธ๋•Œ ์จ๋ณธ์ ์ด ์žˆ์–ด์„œ ์ฐธ๊ณ ํ–ˆ๋‹ค.

* ๋‹ค๋ฅธ์‚ฌ๋žŒ์ด ํ‘ผ ๋ฌธ์ œ 

function solution(phone_number) {
var answer = '';
   for (let i = 0; i < phone_number.length -4; i++)
      {answer += '*';}
       return answer + phone_number.slice(-4);
    }
function solution(phone_number) {
let count = ([...phone_number].slice(0, -4).length)
let a = "*".repeat(count) + [...phone_number].slice(-4).join("")
return a
}