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

for in 루프를 통해 가장 높은 값 찾기 - JavaScript

<시간/>

다음과 같은 과일 이름이 포함된 쉼표 구분 기호 문자열이 있다고 가정합니다. -

const str = 'Banana,Banana,Pear,Orange,Apple,Melon,Grape,Apple,Banana,Grape,Melon,Grape,Melon,Apple,Grape,Banana,Orange,Melon,Orange,Banana,Banana,Orange,Pear,Grape,Orange,Orange,Apple,Apple,Banana';

우리는 그러한 문자열 하나를 취하고 for in 루프를 사용하여 문자열에서 가장 많이 나타나는 과일 이름을 알아내는 JavaScript 함수를 작성해야 합니다.

함수는 가장 많이 나타나는 과일 문자열을 반환해야 합니다.

예시

다음은 코드입니다 -

const str =
'Banana,Banana,Pear,Orange,Apple,Melon,Grape,Apple,Banana,Grape,Melon,Grap
e,Melon,Apple,Grape,Banana,Orange,Melon,Orange,Banana,Banana,Orange,Pear,G
rape,Orange,Orange,Apple,Apple,Banana';
const findMostFrequent = str => {
   const strArr = str.split(',');
   const creds = strArr.reduce((acc, val) => {
      if(acc.has(val)){
         acc.set(val, acc.get(val) + 1);
      }else{
         acc.set(val, 1);
      };
      return acc;
   }, new Map());
   return Array.from(creds).sort((a, b) => b[1] - a[1])[0][0];
};
console.log(findMostFrequent(str));

출력

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

Banana