코딩테스트/Javascript
같은 숫자는 싫어
JWOOKJ
2021. 1. 3. 18:33
#나의 풀이
function solution(arr)
{
let answer = [];
if(arr.length >= 2){
for (let i = 0; i < arr.length - 2; i++){
if(arr[i] !== arr[i + 1]){
answer.push(arr[i]);
}
}
answer.push(arr[arr.length - 1]);
return answer;
}
else{
answer = arr;
return answer
}
}
# 다른 방법
function solution(arr){
return arr.filter((item, index) => item !== arr[index+1])
}
*Array의 index에서 벗어난 수를 입력할 경우 indexError가 나올것으로 예상했으나, 실제로는 undefinded로 반환
그렇기 때문에 filter를 활용하여 callback함수 내에서 비교가 가능
2021/01/03 - [개발/Javascript] - filter
filter
Array.filter(callback()) ==> Array1배열을 순회하며 주어진 callback 함수에서 true를 반환한 요소들을 모아 새로운 배열로 반환한다. const words = ['spray', 'limit', 'elite', 'exuberant', 'destruction',..
jwookj.tistory.com