Ver Mensaje Individual
  #4 (permalink)  
Antiguo 20/03/2005, 17:26
kepawe
 
Fecha de Ingreso: agosto-2004
Mensajes: 157
Antigüedad: 19 años, 8 meses
Puntos: 5
Hola morapena y KarlanKas

Trabajar con array multidimensionales se complica cuando mas dimensiones tiene el array, personalmente creo que es mas facil aprovechar la posibilidad de añadir propiedades en un array para despues trabajar con este mas facilmente.

Te envio este ejemplo y puedas ver otra forma de trabajar con array multidimensionales.

Código:
<html>
<head>
<title>Simulacion de un array multidimensionales</title>
<script language=JavaScript type=text/javascript>
<!--
// contruimos el array multidimensional
var pais = new Array();
pais[0] = {pais:"España",
		capital:"Madrid",
		 continente:"Europa"}
pais[1] = {pais:"Japón",
		capital:"Tokio",
		continente:"Asia"}
pais[2] = {pais:"Francia",
		capital:"Paris",
		continente:"Europa"}
// este metodo obtiene las propiedades y las almacena en
// un array
Array.prototype.properties = function(){
  var nbp = 0, temp_array = [];
  for(var prop in this){
    var prop1 = this[prop]
	    for(var pro2 in prop1){
		temp_array[nbp] = pro2;
	 	nbp++;
	    }
    return temp_array;
    break
    }
}

//-->
</script>
</head>
<body>
<script language=JavaScript type=text/javascript>
<!--
// obtener las propiedades de array multidimensional
var  prop_pais = pais.properties();
var msg = "<hr>";
var msg_capitales = "Todas las capitales almacenadas en el array pais <br>";
// recorremos el array pais
for(var ctr = 0,lg = pais.length; ctr < lg; ctr++){
  // recorremos las propiedades del array pais y obtenemos sus valores
  for(var ctr1 = 0, lg1 = prop_pais.length; ctr1 < lg1; ctr1++){
		// obtenemos todas los valores del array
  		msg+= prop_pais[ctr1] + " = " + pais[ctr][prop_pais[ctr1]] + "<br>";
  		// obtenemos solo las capitales del array
  		if(prop_pais[ctr1] == "capital"){
  		    msg_capitales+= pais[ctr][prop_pais[ctr1]] + "<br>";
  		}
  }	
  msg+= "<hr>";
  
}
document.write(msg);
document.write(msg_capitales + "<hr>");
// otras formas de obtener el valor del array multidimensional
document.write("La capital de España es " + pais[0].capital + "<hr>");
document.write("Tokio es la capital de  " + pais[1]["pais"]+ "<hr>")
//-->
</script>
</body>
</html>

Espero que te sea util.

Saludos :)