본문 바로가기
문제 풀이/Programmers

[프로그래머스] 12918번: 문자열 다루기 기본 (JavaScript)

by Electrohyun 2025. 7. 4.


 

생각 과정

 

너무 쉽다. Number() 메소드 활용하면 되는 것 아닌가? -> 오답

 

정규표현식을 사용해 숫자 0부터 9가 아닌 것이 오면 false를 반환하자.

 

function solution(s) {
  // 문자열 s의 길이 체크
  if(s.length !== 4 && s.length !== 6) return false;
  // 0부터 9까지의 숫자가 아닌게 있는지
  if(/[^0-9]/.test(s)) return false;
  
  return true;
}

 

 

알게 된 것들

 

Number() 메소드 사용하는 것, 왜 오답인지? (드래그)

 

Number()는 "0x12"와 같은 문자열을 16진수로 해석하기 때문에 의도한 것과 다르게 작동한다.