Ordenar Array con caracteres especiales en JavaScript

Introducción

Los caracteres especiales como pueden ser las ñ o las tildes producen verdaderos dolores de cabeza. En este caso vamos a utilizar una función para reemplazar dichos caracteres antes de compararlo y posteriormente lo volver a colocar como corresponde.

Funciones de sustitución

Vamos a sustituir todo el array antes de compararlo:

for (var y=0; y vector[y] = vector[y].toString().replace(/Á|É|Í|Ó|Ú|Ñ/g,function (str,offset,s) {
str =str=="Á"?"A{":str=="É"?"E{":str=="Í"?"I{":str=="Ó "?"O{":str=="Ú"?"U{":str=="Ñ"?"N{":"N{"
return (str) } )
}

Procedemos a ordenar el array

Una vez ordenado pones otra vez los caracteres de forma correcta:

for (var z=0; z vector[z] = vector[z].toString().replace(/A{|E{|I{|O{|U{|N{/g,function (str,offset,s) {
str =str=="A{"?"Á":str=="E{"?"É":str=="I{"?"Í":str=="O{"?"Ó":str=="U{"?"Ú":str=="N{"?"Ñ":"Ñ"
return (str) } )
}

Referencia:

http://www.forosdelweb.com/f13/manipular-array-247815/index2.html

Dejanos tu Comentario

Nombre: (Requerido)

E-Mail: (Requerido)

Sitio WEB:

Comentario: