Pregunta

para un archivo XML, quiero crear una matriz en actionscript donde pueda hacer referencia a un valor particular con una clave que configuré en lugar de 0, 1, 2, etc.

buildings = myParsedObjectFromXML;

var aBuildings = new Array();

for ( building in buildings ) {
    var currentBuilding = buildings[building][0];
    var key:String = currentBuilding.buildingCode;

    aBuildings[key][property1] = currentBuilding.someOtherValue;
    aBuildings[key][property2] = currentBuilding.aDifferentValue;
    ... etc
}

Para poder acceder a los datos en una fecha posterior como esta:

// building description
trace( aBuildings[BUILDING1][property2] );

pero lo anterior no funciona, ¿qué me estoy perdiendo?

¿Fue útil?

Solución

Comenzaría instanciando mi variable aBuildings como un objeto en lugar de una matriz:

var aBuildings = new Object();

A continuación, primero debe crear un Objeto para la clave en la que desea almacenar las propiedades.

aBuildings[key] = new Object();
aBuildings[key]["property1"] = currentBuilding.someOtherValue;
aBuildings[key]["property2"] = currentBuilding.aDifferentValue;

Entonces debería poder leer los valores del objeto aBuildings:

trace( aBuildings["BUILDING1"]["property2"] );

Tenga en cuenta que si BUILDING1 y property2 no son variables de cadena, debe usar literales de cadena.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top