Ver Mensaje Individual
  #12 (permalink)  
Antiguo 21/11/2013, 16:44
pedazovago
 
Fecha de Ingreso: noviembre-2013
Mensajes: 10
Antigüedad: 11 años, 3 meses
Puntos: 0
De acuerdo Respuesta: Recorrer un array seleccionando solo un elemento por fila

Cita:
Iniciado por marlanga Ver Mensaje
Si no quieres escribir un montón de fors anidados, se puede utilizar recursividad, que es algo mas costosa de rendimiento, pero por contra es capaz de combinar cualquier array bidiomensional, sin importar el número de filas o columnas que tenga.

Código Javascript:
Ver original
  1. var quiniela=[
  2.     [90, 8, 2],
  3.     [34, 33, 33],
  4.     [2, 49, 49],  
  5.     [2, 8, 90]
  6. ];
  7.  
  8. var combinaciones=[];
  9. function combinarTodo(indices)
  10. {
  11.     var filas=quiniela.length;
  12.     var columnas=quiniela[0].length;
  13.     if (indices.length==filas)
  14.     {
  15.         var arr=[];
  16.         for (var i=0;i<filas;i++)
  17.         {
  18.             arr.push(quiniela[i][indices[i]]);
  19.         }
  20.         combinaciones.push(arr.join("-"));
  21.         return;
  22.     }
  23.     for (var i=0;i<columnas;i++)
  24.     {
  25.         indices.push(i);
  26.         combinarTodo(indices);
  27.         indices.pop();
  28.     }
  29. }
  30.  
  31. combinarTodo([]);
  32. document.getElementById("div").innerHTML=combinaciones.join("<br/>");

Funcionando:
[url]http://jsfiddle.net/CP9vw/[/url]
Lo primero , muchas gracias a todos por la implicación.

El codigo que me han puesto usando la idea de cambiar filas por columnas, no servia para el proposito que queria, no arrojaba los resultados que debía . Sin embargo este código que ha puesto Marlanga , recorre el array perfectamente. Voy a estudiarle bien como funciona ya que aún no tengo muy claro como funciona, pero es obvio que has dado en el clavo, gracias.

SOLUCIONADO.