如何從特定的數字集中找到一個最近的 أكبر 數字: JavaScript?
我們有一組數字,我們的要求是查詢一個與提供給函式的輸入作為特定數字相等的或最近的高於 key 的值。
數字集定義為 −
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']
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP