Blog de Ikita
Eliminar entradas duplicadas en una matriz o Array - AS3
En ocasiones, se tiene una matriz o Array en Flash que contiene valores duplicados y se requiere que ese Array tenga valores únicos... ¿Cómo se puede hacer?
A continuación escribo un ejemplo aunque siempre existen muchos caminos para encontrar una misma solución, uno que a mi se me ocurre es de la siguiente forma:
function eliminarDuplicado(arr: Array): Array {
// Creamos un new Dictionary y ponemos cada entrada dentro del diccionario como llaves (keys)
var hashMap: Dictionary = new Dictionary();
for each(var thisPerson: * in arr) {
// Todas los valores de entradas duplicadas serán sobreescritos
hashMap[thisPerson] = true;
}
// Convertimos la variable hashmap devuelta a la matriz
arr = [];
for (var thisKey: * in hashMap) {
arr.push(thisKey);
}
return arr
}
var listaDePersonas:Array = ["Mariana", "Ana", "Fernando", "Julia", "Mariana", "Ana", "Ana", "Mauricio", "María Luisa"];
trace(listaDePersonas);
// El output o la salida nos muestra: Mariana,Ana,Fernando,Julia,Mariana,Ana,Ana,Mauricio,María Luisa
var listaActualizadaDePersonas:Array = eliminarDuplicado(listaDePersonas);
trace(listaActualizadaDePersonas);
//La salida ya no tiene valores duplicados: Julia,Mariana,Mauricio,Ana,María Luisa,Fernando
En ocasiones, puede ser que se quiera saber cuántas entradas estaban duplicadas en el Array y el número de ocurrencias, pero eso, ya es tema para otra ocasión. Espero que les sirva este tutorial.
Mantente informado
Cuando se suscriba al blog, le enviaremos un correo electrónico cuando haya nuevas actualizaciones en el sitio para que no se las pierda.
Copyright © 2006 - 2023. Todos los Derechos Reservados a IkitaStudio S.A.S de C.V.
| +52 (844) 3150361
|
Aviso de privacidad
| Términos y condiciones
| +52 (844) 3150361
|
Aviso de privacidad
| Términos y condiciones