안녕하세요 오늘은 서울이 1994년 이후로 최고 온도를 찍은 날입니다..그래서 지금 진짜 녹아내리고 있네요 ㅠㅠ 어디 나가기도 귀찮지만 집은 덥고 참 이러지도 저러지도 못하는 하루였습니다..(결국 집돌이..)
오늘은 오랜만에 온 javascript 8일차 입니다~ 이렇게 포스팅을 하면서 저도 javascript 의 메소드들을 많이 연습하고 익힌거 같아요 실제 개발하면서는 단순 노가다로 작업을 많이 하거든요 포스팅도 하고 일에 도움도 되는 1석 2조의 포스팅 시리즈!! 오늘도 시작해보겠습니다~
문제 | 자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다. |
---|---|
제한 사항 | n은 10,000,000,000이하인 자연수입니다. |
입출력 예 | |
---|---|
n | return |
12345 | [5,4,3,2,1] |
문제를 읽어보니 숫자를 배열로 뒤바꿔서 보여달라고 하네요(손으로 쓰면 금방인걸..)
간단히 생각해서 숫자 개수대로 반복을 해서 뒤부터 차례대로 배열에 담아버리자!!
그래서 풀어봤습니다 바로 정답 가시죠!
function solution(n) {
var answer = [];
var nStr = n.toString();
for(var i = 0; i < nStr.length; i++){
answer.push(Number(nStr[nStr.length -1 -i]));
}
return answer;
}
n은 숫자로 되어있기 때문에 숫자를 순서대로 가져올수가 없어요 숫자는 하나이기때문에..
그래서 n을 문자로 변경을 해서(ex. 12345 -> '12345') 로 변경을 하면 문자열로 변경이 되기 때문에각 위치의 값을 찾아올수가 있겠죠? 그래서 처음에 n.toString() 을 했습니다
그리고 위에서 말씀드린거 처럼 반복을 해서 각 뒤부터 차례대로 배열로 담자 그래서 for문을 실행하고 문자열을 뒤부터 차례대로 배열에 담았습니다 문자 뒷부분 조회하는건 subStr를 이용해서 잘라서 담았습니다
그리고 다른 사람의 풀이를 봤습니다..두둥..!!
function solution(n) {
var answer = [];
return n.toString().split('').reverse().map(o => o = parseInt(o));
}
허허..참 간단하네요 여기에서 toString().split('').reverse() 까지는 생각했는데 map은 안써봐서 몰랐네요 이렇게 편할수가..!! map 객체에 대해 공부해서 다음에 포스팅 하겠습니다 공부공부!!!
지금시간이 되도 엄청 더운 하루인데 다들 잘 버티고 계신지는 모르겠습니다 그래도 즐겁게 스팀잇도 하시고 가족과 시간을 보내며 더운 밤 잘 버티시길 바랍니다!! 화이팅!!