나누어 떨어지는 숫자 배열

hyuri·2023년 9월 14일
0

코딩테스트 연습

목록 보기
11/70

내가 작성한 답

function solution(arr, divisor) {
    let answer = [];
    for (let i of arr){
        i % divisor == 0 ? answer.push(i) : false;
    }
    answer.length == 0 ? answer.push(-1) : answer.sort((a,b) => a-b);
    return answer.sort((a,b) => a-b);
}

깔끔한 답

function solution(arr, divisor) {
    var answer = arr.filter(v => v%divisor == 0);
    return answer.length == 0 ? [-1] : answer.sort((a,b) => a-b);
}

사용한 함수

filter() - 배열 내 특정 조건에 따라 필터링하여 새로운 배열 생성
여기서는 answer에 arr 배열에서 v%divisor 값이 0인 것만 저장한다.
여기서 v는 arr의 배열 값을 받아옴.

함수형 프로그래밍으로 하는 것이 코드가 간결하고 가독성이 비교적 더 좋음.
filter를 사용하여 조건에 맞는 요소를 필터링하는 방식으로 코드를 간소화시켜주었고, 가독성을 높여주었음.

profile
개발자가 되고 싶은 지망생

0개의 댓글