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
Comentarios