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 originalvar a = [/* Contenido del primer arreglo */],
b = [/* Contenido del segundo arreglo */],
c = a;
b.forEach(function(e){
c.indexOf(e) < 0 && c.push(e); //Si el elemento no está en el arreglo c, se lo añade
});
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 originalvar a = [/* Contenido del primer arreglo */],
b = [/* Contenido del segundo arreglo */];
function noRepe(/* Arreglo 1, Arreglo 2, ... */){
var args = arguments, c = [], i = 0, l = args.length;
while (i < l){
args[i++].forEach(function(e){
c.indexOf(e) < 0 && c.push(e);
});
}
return c;
}
noRepe(a, b); //Llamada a la función