[JS] 중복된 숫자 개수 programmers filter

0

코딩테스트

목록 보기
22/80
post-thumbnail

🎀 문제

정수가 담긴 배열 array와 정수 n이 매개변수로 주어질 때, arrayn이 몇 개 있는 지를 return 하도록 solution 함수를 완성해보세요.

function solution(array, n) {
    var answer = 0;
    return answer;
}

🎀 내 답변

function solution(array, n) {
    var answer = 0;
    array.forEach(element => {
        if(element == n){
            answer += 1
        }
    });
    return answer;
}
solution([1, 1, 2, 3, 4, 5],1);
  1. forEach를 사용해서 배열을 돌면서 n으로 들어온 값이 있는지 확인
  2. 있다면 answer에 1을 더해주어 계산한다.

🎀 더 나은 답변

function solution(array, n) {
    return array.filter(v=>v===n).length;
}
  1. 배열을 filter를 사용하여 n 과 같은 값만 뽑아낸다.
  2. 위와 같은 상황에서는 [1, 1] 이렇게 filter되어질 것이다.
  3. filter되어진 배열의 length를 구하여 반환한다.
profile
일단 해. 그리고 잘 되면 잘 된 거, 잘 못되면 그냥 해본 거!

0개의 댓글