알고리즘
[프로그래머스, 자바스크립트] 알고리즘-4 문자열을 정수로 바꾸기
wooluck
2019. 11. 8. 12:10
출처 : 프로그래머스 알고리즘 코딩테스트 Level.1
https://programmers.co.kr/learn/courses/30/lessons/12925?language=javascript
문제
문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요.
제한 조건
1. s의 길이는 1 이상 5이하입니다.
2. s의 맨앞에는 부호(+, -)가 올 수 있습니다.
3. s는 부호와 숫자로만 이루어져있습니다.
4. s는 0으로 시작하지 않습니다.입출력 예
s | return
'1234' | 1234
'-3333' | -3333
풀이 과정
1. 입력받은 문자열을 Number로 반환한다.
답안
function solution(s) {
return Number(s);
}
처음에 문제 하단 부의 예시 문장을 읽지않고 유효성 검사를 했다.
정규표현식을 넣고 테스트를 하고 제출하려하니 아래의 문구가 눈에 들어왔다.
예를들어 str이 1234이면 1234를 반환하고, -1234이면 -1234를 반환하면 됩니다.
str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다.
이후 부랴부랴 유효성 검사 코드를 삭제하고 위의 코드로 제출하였으나 이전의 코드도 그냥 보관하려 한다.
이전의 코드는 아래와 같다.
function solution(s) {
const regExp = /[a-zA-Z!@#$%^&*()=\|]/gi;
if(regExp.test(s) || s.length < 1 || s.length > 5) { return false; }
return Number(s);
}
이번 문제는 정말 단순한 문제인데 풀이가 나뉠까 라고 생각이 들어 다른 사람의 풀이를 보게 되었는데
return +s, return s/1 같은 간결한 답안을 보고 감탄을 금치 못했다.