递归函数怎样判断当前被调用的层数?
想用Flash as2 写一个递归函数,目的就是写个树目录形式的分支菜单。通过写一个递归函数,可以反复往树的各个分支获取子分支。
我构思的这个递归递归函数,无非就是传入一个分支,判断下面有没有子分支,有的话再次调用这个函数,一直反复往下面处理各个分支。
但是我想做一个效果,就是希望不同层级的分支,配上一个不同的小图标带在前面,总之就是故意弄成不同层级对应的图标不一样。
下面用到的 myobj 结构为{oname:String,subObjArr:Array},里面的subObjArr数组中包含的各个元素的结构和 myobj结构一致
代码如下:
var levelNum:Number=0;
function processObj(getObj:Object){
trace("当前的层级:"+levelNum);
trace("getObj.oname:"+getObj.oname);
for(var i=0; i<getObj.subObjArr.length; i++){
levelNum+=1;
processObj(getObj.subObjArr[i]);
levelNum-=1;
}
}
processObj(myobj);
Word教程网 | Excel教程网 | Dreamweaver教程网 | Fireworks教程网 | PPT教程网 | FLASH教程网 | PS教程网 |
HTML教程网 | DIV CSS教程网 | FLASH AS教程网 | ACCESS教程网 | SQL SERVER教程网 | C语言教程网 | JAVASCRIPT教程网 |
ASP教程网 | ASP.NET教程网 | CorelDraw教程网 |