Get the rank of an array of numbers

Rank each number by how many values are larger, starting at 1.

JavaScript Version 1.0.0 · MIT · .md

get-the-rank-of-an-array-of-numbers.js
function ranking(values) { return values.map(value => values.filter(other => other > value).length + 1); }

Input & expected output

Input

[
  80,
  65,
  90,
  65
]

Expected output

[
  2,
  3,
  1,
  3
]

The edge case

Input

[]

Expected output

[]

Know the limits

  • Ties share a rank and the next rank is skipped (competition ranking).
  • Quadratic: fine for the lab’s 1,000 items.

The function above is the implementation used by the lab. The lab validates JSON types and caps size before execution; include equivalent validation when accepting untrusted input in your application.

Source & maintenance

Based on Get the rank of an array of numbers from the original 1loc collection by Nguyen Huu Phuoc. Copyright (c) 2020 phuoc-ng. MIT licensed.

Curated implementation; explicit input contract, edge case and limits. Original MDX retained as inert source evidence.

Maintained by Oveyon. Source commit: 14b481cf60df. Read the license.

Local fixture scope · Node.js 22.23.2 · reviewed October 28, 2026. No external service is required.

Keep exploring

Type two or more characters. Try “duplicate”, “webhook” or “retry”.