2012-01-20 14 views

Respuesta

4

Un bucle de esta forma

combos = [] //or combos = new Array(2); 

for(var i = 0; i < array1.length; i++) 
{ 
    for(var j = 0; j < array2.length; j++) 
    { 
     //you would access the element of the array as array1[i] and array2[j] 
     //create and array with as many elements as the number of arrays you are to combine 
     //add them in 
     //you could have as many dimensions as you need 
     combos.push(array1[i] + array2[j]) 
    } 
} 
6

Suponiendo que estés utilizando un navegador web reciente con soporte para Array.forEach:

var combos = []; 
array1.forEach(function(a1){ 
    array2.forEach(function(a2){ 
    combos.push(a1 + a2); 
    }); 
}); 

Si usted no tiene forEach, es un ejercicio bastante fácil volver a escribir esto sin él. Como otros han probado antes, también hay algunas ventajas de rendimiento que prescindir ... (Aunque afirmo que no mucho después, los tiempos de ejecución comunes de JavaScript optimizarán las ventajas actuales de hacerlo de otra manera).

+0

podría reemplazar para cada uno con para bucles también. – Prescott

+0

Sin navegador ... Voy a utilizar Phonegap para convertirlo en una aplicación nativa de iphone. ¿Eso todavía funcionará? –

+0

@Dingredient: realmente no depende del navegador, sino de la versión de JavaScript admitida. Si 'forEach' no funciona, use la respuesta de rubixibuc en su lugar. – ziesemer

Cuestiones relacionadas