Misbehaving sort

The default behaviour of Array.prototype.sort() in Javascript may not be what you expect if no compare function is provided.

Photo by Faris Mohammed on Unsplash
const array = [0, 2, 1, -2, -1]
array.sort()
//expected result: [-2, -1, 0, 1, 2]
[ -1, -2, 0, 1, 2 ]
const array = [0, 2, 1, -2, -1]
array.sort((a, b) => a - b)
//[-2, -1, 0, 1, 2]

Software developer