如何在 JavaScript 中仅获取数组的前 n%?

javascriptweb developmentobject oriented programming更新于 2025/9/29 19:24:17

我们需要编写一个函数,该函数接受一个数组 arr 和一个介于 0 到 100(含)之间的数字 n,并返回数组的 n% 部分。例如,如果第二个参数是 0,我们应该期望一个空数组,如果是 100,则返回完整数组,如果是 50,则返回一半,诸如此类。

如果没有提供第二个参数,则默认为 50。因此,此代码将是 −

示例

const numbers = [3,6,8,6,8,4,26,8,7,4,23,65,87,98,54,32,57,87];
const byPercent = (arr, n = 50) => {
   const { length } = arr;
   const requiredLength = Math.floor((length * n) / 100);
   return arr.slice(0, requiredLength);
};
console.log(byPercent(numbers));
console.log(byPercent(numbers, 84));
console.log(byPercent(numbers, 34));

输出

控制台中的输出将是 −

[
   3, 6, 8, 6, 8,
   4, 26, 8, 7
]
[
   3, 6, 8, 6, 8, 4,
   26, 8, 7, 4, 23, 65,
   87, 98, 54
]
[ 3, 6, 8, 6, 8, 4 ]

相关文章


有用资源