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

JavaScript를 정렬하지 않고 배열의 고유 요소 계산

<시간/>

일부 중복 값을 포함하는 리터럴 배열이 있다고 가정해 보겠습니다. -

const arr =['고양이', '개', '고양이', '코끼리', '개', '포도', '개', '사자', '포도', '사자']; 

배열에서 고유한 요소의 개수를 반환하는 함수를 작성해야 합니다. 이를 수행하기 위해 Array.prototype.reduce() 및 Array.prototype.lastIndexOf()를 사용합니다 -

예시

const arr =['고양이', '개', '고양이', '코끼리', '개', '포도', '개', '사자', '포도', '사자']; const countUnique =arr => { return arr.reduce((acc, val, ind, array) => { if(array.lastIndexOf(val) ===ind){ return ++acc; }; return acc; }, 0);};console.log(countUnique(arr));

출력

콘솔의 출력은 -

5