读书人

获取目录树递归为啥得到的结果为und

发布时间: 2012-10-18 13:46:56 作者: rapoo

获取目录树递归,为什么得到的结果为undefined?
获取目录树递归,为什么得到的结果为undefined?


HTML code
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/mootools/1.4.5/mootools-yui-compressed.js"></script><script type="text/javascript">    var drres={        categories:[            {categories_id:'4',parent_id:'0'},            {categories_id:'6',parent_id:'4'},            {categories_id:'7',parent_id:'6'}        ]    }        //获取目录树数组,如['4','6','7']    function get_upper_categories(cid,arr){        var arr=arr||[];        var a=drres.categories.filter(function (n,i){            return n.categories_id==cid;        });        if(a.length>0){            arr.unshift(cid);            get_upper_categories(a[0]['parent_id'],arr);        }else{            return arr;        }    }        var tree=get_upper_categories('7');    alert(tree);</script>


[解决办法]
我自己写了一个简单的递归函数,也是返回不了局部变量。
估计是递归函数的问题,返回不了局部变量。可以定义一个全局变量,最后将arr赋值进去。
跪求大神指教啊!!

读书人网 >JavaScript

热点推荐