- 배열 arr의 각 원소는 숫자 0부터 9까지
- 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거
- 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지
- 배열 arr의 크기 : 1,000,000 이하의 자연수
for문 사용
for문으로 현재와 다음의 문자가 같은지를 체크하여
다른 경우만 새로운 배열에 추가
function solution(arr) {
var answer = []; // 새로운 배열
for(var i = 0; i < arr.length; i++) { // 처음부터 끝까지 반복
arr[i] == arr[i+1] ? '' : answer.push(arr[i]);
// 현재와 다음의 문자가 같은문자인지 확인 후 다를경우에만 새 배열에 추가
}
return answer;
}
filter 사용
filter를 통해 알수있는 현재 요소와 인덱스로 문제 해결
function solution(arr) {
return arr.filter((el, i) => el != arr[i+1]);
// 현재 인덱스의 요소와 다음 인덱스의 요소가 다르면 통과하여 새로운 배열에 추가
}
Array.filter() : 주어진 함수의 테스트를 통과하는 모든 요소를 모아 새로운 배열로 반환하는 메서드
'프로그래머스 > JavaScript' 카테고리의 다른 글
[프로그래머스 Javascript] Level1 하샤드 수 (0) | 2019.02.06 |
---|---|
[프로그래머스 Javascript] Level1 행렬의 덧셈 (0) | 2019.02.06 |
[프로그래머스 Javascript] Level1 문자열 다루기 기본 (0) | 2019.02.03 |
[프로그래머스 Javascript] Level1 최대공약수와 최소공배수 (0) | 2019.02.03 |
[프로그래머스 Javascript] Level1 문자열 내 p와 y의 개수 (0) | 2019.02.02 |