N max elements

JavaScript, Math · Oct 21, 2020

Returns the n maximum elements from the provided array.

  • Use Array.prototype.sort() combined with the spread operator (...) to create a shallow clone of the array and sort it in descending order.
  • Use Array.prototype.slice() to get the specified number of elements.
  • Omit the second argument, n, to get a one-element array.
  • If n is greater than or equal to the provided array's length, then return the original array (sorted in descending order).
const maxN = (arr, n = 1) => [...arr].sort((a, b) => b - a).slice(0, n);
maxN([1, 2, 3]); // [3]
maxN([1, 2, 3], 2); // [3, 2]

More like this

  • Max array value based on function

    Returns the maximum value of an array, after mapping each element to a value using the provided function.

    JavaScript, Math · Oct 21, 2020

  • N min elements

    Returns the n minimum elements from the provided array.

    JavaScript, Math · Oct 21, 2020

  • Mapped array average

    Calculates the average of an array, after mapping each element to a value using the provided function.

    JavaScript, Math · Oct 21, 2020