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

특정 숫자 집합에서 가장 가까운 더 높은 숫자를 찾는 방법:JavaScript ?

<시간/>

우리는 일련의 숫자를 가지고 있으며 우리의 요구 사항은 함수에 대한 입력으로 제공된 특정 숫자와 같거나 가장 가까운 더 높은 숫자 키를 찾는 것입니다.

숫자 집합은 −

로 정의됩니다.
const numbers = {
   A:107,
   B:112,
   C:117,
   D:127,
   E:132,
   F:140,
   G:117,
   H:127,
   I:132,
   J:132,
   K:140,
   L:147,
   M:117,
   N:127,
   O:132
};

예시

이에 대한 코드는 -

const numbers = {
   A:107,
   B:112,
   C:117,
   D:127,
   E:132,
   F:140,
   G:117,
   H:127,
   I:132,
   J:132,
   K:140,
   L:147,
   M:117,
   N:127,
   O:132
};
const nearestHighest = (obj, val) => {
   let diff = Infinity;
   const nearest = Object.keys(obj).reduce((acc, key) => {
      let difference = obj[key] - val;
      if (difference >= 0 && difference < diff) {
         diff = difference;
         acc = [key];
      }
      return acc;
   }, [])
   return nearest;
};
console.log(nearestHighest(numbers, 140));

출력

콘솔의 출력은 -

['F']