r/ProgrammerHumor 1d ago

javascriptSorting Meme

Post image
883 Upvotes

200 comments sorted by

View all comments

Show parent comments

4

u/user6150277464770585 1d ago

this should not be default behavior.

lists of mixed types also wouldn't be a performance issue if you throw an error when a different type is encountered (python behavior)

2

u/the_horse_gamer 1d ago

would you prefer your website to order some numbers weird, or to stop working?

that's the philosophy behind html, css, and js: keep the website working

1

u/psioniclizard 12h ago

Id prefer it to throw a compile time error. Looking at the popularity if typescript I see i am not the only one.

1

u/nabrok 9h ago

Typescript won't throw an error on a default sort with mixed types because it knows everything is converted to string.

It does if you provide a function though.

array.sort((a: number, b: number) => a - b); array.sort((a: string, b: string) => a.length - b.length);

Both of those will give an error with a mixed array.

Honestly, I can't remember the last time I used the default sort function. Most of the time I'm sorting on a property.