cómo hacer un "push plano" en javascript?

Quiero insert todos los elementos individuales de una matriz fuente en una matriz objective,

tartget.push(source); 

pone solo la reference de la fuente en la list de objectives.

En lugar de eso, quiero hacer:

 for (i=0;i<source.length;i++) { target.push(source[i]); } 

¿Hay alguna manera en javascript para hacer esto más elegante, sin codificar explícitamente un ciclo de repetición?

Y mientras estoy en ello, ¿cuál es el término correcto? No creo que el "impulso plano" sea correcto. Google no produjo ningún resultado ya que el origen y el destino son ambas matrices.

gracias por adelantado.

Puedes usar el método concat :

 var num1 = [1, 2, 3]; var num2 = [4, 5, 6]; var num3 = [7, 8, 9]; // creates array [1, 2, 3, 4, 5, 6, 7, 8, 9]; num1, num2, num3 are unchanged var nums = num1.concat(num2, num3); 

apply hace lo que quiere:

 var target = [1,2]; var source = [3,4,5]; target.push.apply(target, source); alert(target); // 1, 2, 3, 4, 5 

MDC – aplicar

Llama a una function con un valor dado dado y arguments provistos como una matriz .