No, it makes sense to sort strings when you get handed strings, and sort numbers when handed numbers. Period. Default behavior is now exactly as expected by 100% of developers.
Your creativity as a language designer should only come in to play when dealing with sets of mixed type.
Both Python and Erlang would return [1,2,3,"a"], Ruby and Clojure won't allow the comparison. Either of these approaches makes more sense than JavaScript's.
Your creativity as a language designer should only come in to play when dealing with sets of mixed type.