Да, массивы можно сортировать, потому что, как и любой другой объект, который вы можете создать в любом языке ООП, массив — это встроенный объект. И не важно, прототип это или классический объект. Вы можете создать объект, который содержит данные, как обычный хэш-объект, и создать для него метод сортировки. Я знаю, что у JS есть свои проблемы, и я согласен с вами, что мы не должны срать на него, но это даже не проблема языка. Я думаю, что у него недостаточно встроенных методов, чтобы сделать программирование таким увлекательным, каким оно могло бы быть на таком языке, как Ruby. Пример генерирует диапазон чисел:

(1..10).to_a в Ruby, диапазон (1,11) python

Я ожидаю, что мне не придется писать для этого функцию на современном языке, но, как вы сказали, «ни один язык не совершенен», и я люблю JavaScript за то, что он делает хорошо, и я надеюсь, что он станет лучше.