在 JavaScript 中將陣列中的數字轉換為相對於 0-100 的數字


比如說,我們有一個包含一些數字的陣列,我們的任務是編寫一個函式,該函式接受陣列並在 0 到 100 之間對映所有值。這意味著最大的數字應替換為 100,最小的數字應替換為 100,而所有其他數字應根據比率轉換為 0 到 100 之間的特定數字。

以下是完成此功能的程式碼 −

示例

const numbers = [45.71, 49.53, 18.5, 8.38, 38.43, 28.44];
const mapNumbers = (arr) => {
   const max = Math.max(...arr);
   const min = Math.min(...arr);
   const diff = max - min;
   return arr.reduce((acc, val) => acc.concat((100/diff)*(val-min)), []);
};
console.log(mapNumbers(numbers));

輸出

控制檯中的輸出將為 −

[
   90.71688942891859,
   100,
   24.59295261239368,
   0,
   73.02551640340218,
   48.74848116646417
]

更新於: 21-Aug-2020

173 瀏覽量

開啟你的 職業

完成課程即可獲得認證

入門
廣告