Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

배열의 요소가 반복되는지 확인하는 방법은 무엇입니까? - 자바스크립트

<시간/>

우리는 두 개의 인수를 취하는 JavaScript 함수를 작성해야 합니다 -

  • 일부 반복 요소를 포함할 수 있는 리터럴의 배열(예:arr)
  • 숫자, 예를 들면 제한입니다.

함수는 배열의 요소가 제한된 횟수 이상 반복되지 않는지 확인해야 합니다. 요소가 제한보다 많이 반복되면 함수는 false를 반환하고 그렇지 않으면 true를 반환해야 합니다.

예시

다음은 코드입니다 -

const arr = [4, 6, 7, 4, 2, 5, 7, 7, 4, 4, 3];
const validateElements = (arr, n) => {
   const counts = arr.reduce((acc, el) => {
      acc[el] = (acc[el] + 1) || 1;
      return acc;
   }, {});
   return Object.values(counts).every(c => {
      return c < n;
   });
};
console.log(validateElements(arr, 3));
console.log(validateElements(arr, 4));
console.log(validateElements(arr, 6));

출력

이것은 콘솔에 다음과 같은 출력을 생성합니다 -

false
false
true