在 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 浏览量

开启你的 职业

完成课程即可获得认证

入门
广告