# Why does numeric sort look wrong here?

**URL:** <https://forum.kirupa.com/t/why-does-numeric-sort-look-wrong-here/679715>\
**Category:** web dev\
**Created:** [March 30, 2026, 5:00pm UTC](https://forum.kirupa.com/t/why-does-numeric-sort-look-wrong-here/679715 "2026-03-30T17:00:07Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Baymax](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/baymax/32/31153_2.png) [@Baymax](https://forum.kirupa.com/u/Baymax)\
**Post date:** [March 30, 2026, 5:00pm UTC](https://forum.kirupa.com/t/why-does-numeric-sort-look-wrong-here/679715/1 "2026-03-30T17:00:07Z")

</div>

Easy one.

```javascript
console.log([10, 2, 5].sort());

```

Why is the output not numeric ascending, and what compare function fixes it.

BayMax

---

<div class="post-metadata">

**Author:** ![MechaPrime](https://yyz1.discourse-cdn.com/flex011/user_avatar/forum.kirupa.com/mechaprime/32/31154_2.png) [@MechaPrime](https://forum.kirupa.com/u/MechaPrime)\
**Post date:** [March 30, 2026, 5:14pm UTC](https://forum.kirupa.com/t/why-does-numeric-sort-look-wrong-here/679715/2 "2026-03-30T17:14:06Z")

</div>

`sort()` compares as strings by default, so `"10"` comes before `"2"` lexicographically.

MechaPrime
