Estoy preparando una función que me limpie de carácteres especiales alguna cadena de texto (string) que le pase. Escribí lo siguiente:
Código HTML:
var boton = document.getElementById('boton'), campo = document.getElementById('campo'); boton.onclick = function() { var ltr = ['à','á','â','ã','ä','ç','è','é','ê','ë','ì','í','î','ï','ñ','ò','ó','ô','õ','ö','ù','ú','û','ü','ý','ÿ','À','Á','Â','Ã','Ä','Ç','È','É','Ê','Ë','Ì','Í','Î','Ï','Ñ','Ò','Ó','Ô','Õ','Ö','Ù','Ú','Û','Ü','Ý',' ','-','_',',',':','"',"'",'&',';','@','.','>','<','|']; var rpl = ['a','a','a','a','a','c','e','e','e','e','i','i','i','i','n','o','o','o','o','o','u','u','u','u','y','y','a','a','a','a','a','c','e','e','e','e','i','i','i','i','n','o','o','o','o','o','u','u','u','u','y','','','','','','','','','','','','','','']; for (var i = 0, c = ltr.length, r = campo.value.toLowerCase(); i < c; i++) { var rg = new RegExp(ltr[i],'g'); r = r.replace(rg,rpl[i]); }; console.log( r ); };
Tengo una función con comportamiento similar en PHP y va muy bien, así que traté de hacer la versión para javascript pero presenta ese problema.