Hola amantes del código fijaos en esto:
<code>
var administracionGeneral:Array = new Array("<hola><mundo>Hola
mundo</mundo></hola>");
//
for (i=0; i<administracionGeneral.length; i++) {
var tempXml:XML = new
XML(administracionGeneral.join(""));
trace("¿Que devuelve antes de ser borrado? -->
"+tempXml);
delete tempXml
trace("¿Que devuelve despues de ser borrado? -->
"+tempXml);
}
</code>
¿Todo bien verdad?, que nadie me suelte que no puedo asignarle un tipo a una
variable local, porque si que se puede :), vemos que los valores devueltos
son correctos, en primer lugar el XML y luego "undefined" porque lo hemos
borrado, bien, sigamos...
<code>
function unaFuncion(){
//
var administracionGeneral:Array = new Array("<hola><mundo>Hola
mundo</mundo></hola>");
//
for (i=0; i<administracionGeneral.length; i++) {
var tempXml:XML = new
XML(administracionGeneral.join(""));
trace("¿Que devuelve antes de ser borrado? -->
"+tempXml);
delete tempXml
trace("¿Que devuelve despues de ser borrado? -->
"+tempXml);
}
}
unaFuncion();
</code>
Bueno, aquí ya me he empezado a mosquear, el flash pasa de mi al hacer el
delete, los valores que se devuelven en ambos casos son el objeto xml con
sus nodos ¿porque?, quien sabe... pero... continuemos,
<code>
function unaFuncion(){
//
var administracionGeneral:Array = new Array("<hola><mundo>Hola
mundo</mundo></hola>");
//
for (i=0; i<administracionGeneral.length; i++) {
tempXml = new XML(administracionGeneral.join(""));
trace("¿Que devuelve antes de ser borrado? -->
"+tempXml);
delete tempXml
trace("¿Que devuelve despues de ser borrado? -->
"+tempXml);
}
}
unaFuncion();
</code>
jojo, esto si que es bueno, le quito el identificador "var" a "tempXml" y
vuelve a ir bien, ya me hace caso al hacer el delete, ojo, yo entiendo (que
alguien me corrija) que las variables definidas dentro de una función (con
el "var" o sin el) son locales y caducan con la función, he probado a crear
la variable fuera de la funcion y borrarla dentro, y va perfectamente, el
problema en mi caso es querer crear la instancia de "tempXml" dentro de una
función, que no me deja borrarla, ¿porque?, el codigo funciona
perfectamente, pero no puedo eliminar ese objeto. ¿Que pensais?
Saludos.
Jano
----------------------------------
Lista ASNativos:[email protected]
http://www.5dms.com/listas
----------------------------------