# AS3 : array length trace to 0,

**URL:** <https://forum.kirupa.com/t/as3-array-length-trace-to-0/327030>\
**Category:** flash\
**Created:** [February 1, 2012, 5:19am UTC](https://forum.kirupa.com/t/as3-array-length-trace-to-0/327030 "2012-02-01T05:19:00Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![ash\_at\_risk](https://avatars.discourse-cdn.com/v4/letter/a/2bfe46/32.png) [@ash\_at\_risk](https://forum.kirupa.com/u/ash_at_risk)\
**Post date:** [February 1, 2012, 5:19am UTC](https://forum.kirupa.com/t/as3-array-length-trace-to-0/327030/1 "2012-02-01T05:19:00Z")

</div>

Hello everybody,  
I have this code working which has an XML file. This is the code for XML menu(no drop down) for website , i am working on, but i wonder when i traced the value of both arr2 & arr1 it returns 0, although i pushed the value.

```auto
stop();
var url:URLRequest= new URLRequest("Menu.xml");
var url_load:URLLoader= new URLLoader(url);

var num:int;
var Mc_grouped:MovieClip= new MovieClip();
var Menu_space:Number= 15;
addChild(Mc_grouped);
Mc_grouped.x=0;
Mc_grouped.y=0;
Mc_grouped.width=1100;
Mc_grouped.height=90;

var arr1:Array= new Array();
var arr2:Array= new Array();
url_load.load(url);
url_load.addEventListener(Event.COMPLETE, func0);
function func0(e1:Event)
{
    var Xml:XML= new XML(e1.target.data);
    num=Xml.children().length();
    for(var a:int= 0 ;a<Xml.children().length() ;a++)
    {
        arr1.push(Xml..menu[a].toString());
    }
    load_menu();
}

function load_menu()
{
    for ( var a:int=0; a<arr1.length; a++)
    {
        var Mc_menu:MovieClip= new MovieClip();
        Mc_menu.width= 100;
        Mc_menu.height= 0;
        Mc_menu.x= 50 + a * Mc_menu.width + Menu_space;
        Mc_menu.y= Mc_grouped.height/2;
        addChild(Mc_menu);
        text_label(arr1[a], a+1);
    } 
}

function text_label(lbl:String, q:int)
{
    var txtField:TextField= new TextField();
    menuss.addChild(txtField);
    button_movieClip(q);
    txtField.text= lbl;
    var heightt:Number= Mc_grouped.height;
    txtField.width= 150;
    txtField.x= 150 * q;
    txtField.y= 0;
}

function button_movieClip(K:int)
{
    var mc1:sprite53= new sprite53();
    menuss.addChildAt(mc1,0); 
    mc1.name= "mc" + K;
    trace(mc1.name);
    mc1.x=150 * K;
    mc1.y= 0;
    mc1.width= 140;
    mc1.height= 30;
    arr2.push(mc1.name);
}
trace(arr1.length); // It return 0
trace(arr2.length); // It return 0

```
