일부 반복 항목이 포함된 숫자/문자열 리터럴 배열이 있습니다. 우리의 임무는 양의 정수 Number n을 받아서 onlyargument에 의해 지정된 숫자 n보다 크거나 같은 모양을 만드는 모든 요소의 하위 배열을 반환하는 함수를 작성하는 것입니다.
따라서 이 함수에 대한 코드를 작성해 보겠습니다. -
Map()을 사용하여 요소의 빈도 수를 유지하고 나중에 지정된 수를 초과하는 요소를 반환합니다. 이에 대한 코드는 -
예시
const arr = [34, 6, 34, 8, 54, 7, 87, 23, 34, 6, 21, 6, 23, 4, 23]; const moreThan = (arr, num) => { const creds = arr.reduce((acc, val) => { let { map, res } = acc; const count = map.get(val); if(!count && typeof count !== 'number'){ map.set(val, 1); }else if(num - count <= 1){ res.push(val); } else { map.set(val, count+1); }; return {map, res}; }, { map: new Map(), res: [] }); return creds.res; }; console.log(moreThan(arr, 3));
출력
콘솔의 출력은 -
[34, 6, 23]