Ordenar Array con caracteres especiales en JavaScript

Enviado por keopx el Sáb, 01/08/2009 - 17:25

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

Categoria

Añadir nuevo comentario

El contenido de este campo se mantiene privado y no se mostrará públicamente.

HTML Restringido

  • Etiquetas HTML permitidas: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Saltos automáticos de líneas y de párrafos.
  • Las direcciones de correos electrónicos y páginas web se convierten en enlaces automáticamente.