Unit5 - [JavaScript] ๊ธฐ์ดˆ - 3

๊ฐ•์„ฑ์ผยท2023๋…„ 4์›” 20์ผ
0
post-thumbnail

โœ… TIL


indexOf ์™€ typeof๋ฅผ ํ—ท๊ฐˆ๋ฆฌ์ง€ ๋ง์ž !


๊ตฌ๊ตฌ๋‹จ ํ˜•ํƒœ ์ข‹์•„๋ณด์—ฌ์„œ ๊ฐ€์ ธ์™”๋‹ค :)




โœ… ์˜ค๋‹ต๋…ธํŠธ


๐Ÿ“ makeDigits2


๋‚ด๊ฐ€ ์ ์€ ๋‹ต


function makeDigits2(num) {
  let a = '';
  let i=1;
  while(i<=num)
  {
    a = `${String(i)}-`;
    i++;
  }
  return a;
}

์ •๋‹ต & ํ’€์ด


function makeDigits2(num) {
  let result = '1';
  let i = 2;
  while (i <= num) {
    result = result + `-${i}`;
    i++;
  }

  return result;
}

a๋ฅผ ๊ณ„์† ์—…๋ฐ์ดํŠธ ์‹œ์ผœ์ฃผ์ง€ ์•Š์„๋ฟ๋”๋Ÿฌ, "1- ์ด๋ ‡๊ฒŒ ์‹œ์ž‘ํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ดˆ๊ธฐ ๊ฐ’์„ ๋ ˆํผ๋Ÿฐ์Šค์ฒ˜๋Ÿผ 1๋กœ ์ฃผ๊ณ 
๊ทธ ๋‹ค์Œ 2 ๋ถ€ํ„ฐ ์Šคํƒ์‹œํ‚ค๋Š” ๊ฒƒ์ด ์˜ฌ๋ฐ”๋ฅธ ๊ฒƒ ๊ฐ™๋‹ค. ๋‹น์—ฐํžˆ - ์˜ ๋ฐฉํ–ฅ์€ String(i)์˜ ์™ผ์ชฝ !



๐Ÿ“ replaceAll


๋‚ด๊ฐ€ ์ ์€ ๋‹ต


function replaceAll(str, from, to) {  
  for(let i=0;i<str.length;i++){
    if(from === str[i]){
      str[i]=to; 
    }
  }
  return str;
}

์ •๋‹ต & ํ’€์ด


function replaceAll(str, from, to) {
  let result = '';
  for (let i = 0; i < str.length; i++) {
    if (str[i] === from) {
      result = result + to;
    } else {
      result = result + str[i];
    }
  }
  return result;
}

์œ„ ๋ฌธ์ œ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ str๊ฐ€ ์ง€์†์ ์œผ๋กœ ์—…๋ฐ์ดํŠธ ๋˜์ง€ ์•Š๋Š”๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๋ ˆํผ๋Ÿฐ์Šค์ฒ˜๋Ÿผ ์กฐ๊ฑด์— ๋งž๋‹ค๋ฉด to๋ฅผ ์ฑ„ํƒ, ํ‹€๋ฆฌ๋‹ค๋ฉด str[i]๋ฅผ ๊ทธ๋Œ€๋กœ ๊ฐ€์ ธ์˜ค๋„๋ก ๋ถ„๋ฆฌํ•ด์ฃผ๋Š”๊ฒŒ ๋งž๋‹ค.



๐Ÿ”ฅ ์•”๊ธฐ.

Math.sqrt ๋กœ ๋ฃจํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ, ๋ฒ”์œ„๋ฅผ ์ œํ•œํ•˜๋Š” ๊ฒƒ์ด ๋ฐฐ์›Œ๊ฐ€๋Š” ์ ์ด์—ˆ๊ณ ,

for ๋ฌธ ์•ˆ์—์„œ boolean์„ ๊ฐ€์ •ํ•˜์—ฌ if ๋กœ ํ’€์–ด๋‚˜์•„๊ฐ„ ๊ฒƒ์ด ์ธ์ƒ์ ์ด์—ˆ๋‹ค.


๋‘ ๋ฒˆ์งธ for ๋ฌธ์˜ ๋ฒ”์œ„๋ฅผ ์ฒซ ๋ฒˆ์งธ์™€ ๊ฐ™์ด str.length๋กœ ์คฌ๋‹ค.

i ์™€ c ๋ฅผ ๋”ฐ๋กœ ๊ฐ€์ง€๊ณ  ๋†€๋ฉด์„œ๋„ ๋™์‹œ์— ์ด์–ด์ฃผ๋Š” ๋Š๋‚Œ์ด๋ผ ์ธ์ƒ์ ์ด์—ˆ๋‹ค.


์ฒ˜์Œ์— str.slice๋ฅผ ์‚ฌ์šฉํ•˜๋ ค ํ–ˆ๋Š”๋ฐ ๊ธˆ์ง€๋‹นํ•ด์„œ ๋œจ๋”ํ–ˆ๋‹ค.. ใ…‹ใ…‹..

์ž„์˜์˜ ๋นˆ ๋ฌธ์ž์—ด์„ ๊ณ„์† ๊ฐ€์ ธ์™€์„œ ๋‘ ๋ฒˆ์งธ์˜ for ๋ฌธ ๋ฒ”์œ„๋ฅผ str.length ๋กœ ์ œํ•œํ•˜๊ณ ,
๋ฌธ์ž์—ด์— ๊ณ„์† ๋”ํ•ด์ฃผ๋Š” ๋ฐฉ์‹์ด ์ธ์ƒ์ ์ด์—ˆ๋‹ค.


๐Ÿชฒ ๋””๋ฒ„๊ทธ ์‚ฌ์šฉ๋ฐฉ๋ฒ•.


์ฝ”๋“œ ์œ„์— debugger; ํ•œ ์ค„๋งŒ ๋„ฃ๊ณ , ๋ธŒ๋ผ์šฐ์ € ์ฝ˜์†” ์ฐฝ์— ์ž…๋ ฅํ•˜๋ฉด ์ž๋™์œผ๋กœ ์ด๋™ํ•œ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ์ถ”๊ฐ€๋กœ ํ™”์‚ดํ‘œ๋ฅผ ๋ˆŒ๋Ÿฌ ์ฝ”๋“œ๊ฐ€ ์ง„ํ–‰๋˜๋Š” ํ•œ ๋‹จ๊ณ„ ๋‹จ์œ„๋กœ ์ชผ๊ฐœ์„œ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

debugger;

function makeDigits2(num) {
 ...
}

์ฐธ๊ณ  - https://www.loom.com/share/d6edab0a9c1d441b8e2baa15e5813e49

profile
์•„์ด๋””์–ด๊ฐ€ ๋„˜์น˜๋Š” ํ”„๋ก ํŠธ์—”๋“œ๋ฅผ ๊ฟˆ๊ฟ‰๋‹ˆ๋‹ค ๐Ÿ”ฅ

0๊ฐœ์˜ ๋Œ“๊ธ€