Foros del Web » Programando para Internet » Javascript »

Merge de dos arreglos y eliminar duplicados

Estas en el tema de Merge de dos arreglos y eliminar duplicados en el foro de Javascript en Foros del Web. Hola, tengo dos arreglos en javascript . . . En el arreglo A tengo lo siguiente . . . ["T7DEZ7DqeXNUPsDK5wgR16D6VRW2", "UfLTJBCHTjYehe3ODhb5Qn0b1Xh2", "WfVWeVm0DEYlznAhFuJIgPaywhG3", "i5K2EFOjPIRk5ChMcZHw8vwncVk1", "s8gSaK4jffh8RGtcgYx7QvqmCl42", "zMbQOvMVxeOZpgu6cFb0y9wWkFe2"] ...
  #1 (permalink)  
Antiguo 03/08/2016, 16:37
Avatar de netovs  
Fecha de Ingreso: enero-2010
Ubicación: Mexico DF
Mensajes: 150
Antigüedad: 14 años, 3 meses
Puntos: 9
Pregunta Merge de dos arreglos y eliminar duplicados

Hola, tengo dos arreglos en javascript . . .

En el arreglo A tengo lo siguiente . . .
["T7DEZ7DqeXNUPsDK5wgR16D6VRW2",
"UfLTJBCHTjYehe3ODhb5Qn0b1Xh2",
"WfVWeVm0DEYlznAhFuJIgPaywhG3",
"i5K2EFOjPIRk5ChMcZHw8vwncVk1",
"s8gSaK4jffh8RGtcgYx7QvqmCl42",
"zMbQOvMVxeOZpgu6cFb0y9wWkFe2"]

Y en el arreglo B tengo:
["WfVWeVm0DEYlznAhFuJIgPaywhG3","WfVWeVm0DEYlznAhFu JIgPaywhG3"]

QUIERO ELIMINAR LOS ELEMENTOS QUE SON IGUALES Y GENERAR UN ARREGLO C DONDE LOS ELEMENTOS QUE FUERON ELIMINADOS NO SE MUESTREN. . .

INTENTÉ CON .CONCAT Y UNIQUE DE JQUERY PERO ESO SÓLO BUSCA LOS ELEMENTOS Y SÍ SON IGUALES HACE UN MERGE Y AÚN ASÍ SIGUEN ESTANDO LOS ELEMENTOS DEL ARREGLO B. . .
__________________
No por que a mi nadie me ayudo a aprender a programar yo no les voy a ayudar ...

Comunicación Web

Última edición por netovs; 03/08/2016 a las 17:20 Razón: Agregar el lenguaje javascript
  #2 (permalink)  
Antiguo 03/08/2016, 22:11
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Merge de dos arreglos y eliminar duplicados

Si lo que buscas es unir a los elementos de ambos arreglos en uno en donde no haya repeticiones, podrías hacer una copia del primer arreglo, recorrer al segundo y, en cada iteración, verificar si cada elemento del segundo arreglo está en la copia del primero; de no ser así, lo añades.
Código Javascript:
Ver original
  1. var a = [/* Contenido del primer arreglo */],
  2.     b = [/* Contenido del segundo arreglo */],
  3.     c = a;
  4.  
  5. b.forEach(function(e){
  6.     c.indexOf(e) < 0 && c.push(e); //Si el elemento no está en el arreglo c, se lo añade
  7. });

Y si quisieras evitar la existencia de elementos repetidos provenientes del primer arreglo, lo conveniente sería que tengas un tercer arreglo inicialmente vacío al cual irías añadiendo elementos de los dos o N arreglos iniciales, mismos que recorrerías, y verificando que cada elemento no exista en el arreglo final. Si abstraes la funcionalidad en una función, tendrás la ventaja de poder reutilizarla con otros arreglos.
Código Javascript:
Ver original
  1. var a = [/* Contenido del primer arreglo */],
  2.     b = [/* Contenido del segundo arreglo */];
  3.  
  4. function noRepe(/* Arreglo 1, Arreglo 2, ... */){
  5.     var args = arguments, c = [], i = 0, l = args.length;
  6.     while (i < l){
  7.         args[i++].forEach(function(e){
  8.             c.indexOf(e) < 0 && c.push(e);
  9.         });
  10.     }
  11.     return c;
  12. }
  13.  
  14. noRepe(a, b); //Llamada a la función

__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: arrays
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:48.