[πŸ™μ•Œκ³ λ¦¬μ¦˜] μ½”λ“œμŠ€ν…Œμ΄μΈ  - numberSearch

dsfasdΒ·2022λ…„ 10μ›” 18일
0

numberSearch


문제

λ¬Έμžμ—΄μ„ μž…λ ₯λ°›μ•„ λ¬Έμžμ—΄μ—μ„œ 숫자λ₯Ό λͺ¨λ‘ μ°Ύμ•„ λ”ν•œ 뒀에 ν•΄λ‹Ή 값을 (μˆ«μžμ™€ 곡백을 μ œμ™Έν•œ λ‚˜λ¨Έμ§€) λ¬Έμžμ—΄μ˜ 길이둜 λ‚˜λˆˆ 값을 μ •μˆ˜λ‘œ λ°˜μ˜¬λ¦Όν•˜μ—¬ 리턴해야 ν•©λ‹ˆλ‹€


풀이

function numberSearch(str) {
  // TODO: 여기에 μ½”λ“œλ₯Ό μž‘μ„±ν•©λ‹ˆλ‹€.

  if(str.length === 0){
    return 0;
  }

  let sum = 0;
  let len = 0;

  for(let i=0;i<str.length;i++){
    console.log(str.charCodeAt(i));
    if(str.charCodeAt(i)<=57 && str.charCodeAt(i)>=48){ //숫자면
      sum+= Number(str[i]);
    }else if(str.charCodeAt(i)<=32){ //문자면
      continue;
    }else{
      len +=1;
    }
  }
  return Math.round(sum / len)
}

배운점

charCodeAt( )

charCodeAt()은 λ¬Έμžμ—΄μ˜ μ•„μŠ€ν‚€κ°’μ„ λ°˜ν™˜ν•΄μ€€λ‹€.
λ¬Έμžμ—΄μ΄λž‘ μˆ«μžκ°’μ„ κ΅¬λΆ„ν•˜λ €κ³  μ‚¬μš©ν–ˆλ‹€.
0-9의 μ•„μŠ€ν‚€κ°’μ€ 48-57에 ν•΄λ‹Ή,
A-ZλŠ” 65-90
a-zλŠ” 97-121

Math.round( )

κ°€μž₯ κ°€κΉŒμš΄ μ •μˆ˜λ‘œ 반올림된 숫자 값을 λ°˜ν™˜ν•œλ‹€.


profile
기둝을 μ •λ¦¬ν•˜λŠ” 곡간!

0개의 λŒ“κΈ€