easyUI的格式化formatter无法遍历怎么么办,两处打印也不一样

function formatNewsType(value,row,index) {
    var data={};
    var data1='';
    var myArray=new Array();
    $.ajax({
        url : headUrl+'/admin/type/getTypeListAll',
        xhrFields: {
            withCredentials: true
        },
        data : JSON.stringify(data),
        type : 'post',
        contentType:'application/json;charset=UTF-8',
        dataType : 'json',
        success : function(result) {
            if (result.code == 1) {
                $.messager.alert('操作提示', result.message, 'info');
            } else {
                data1=result.content.content;
                for(var i=0;i<data1.length;i++)
                {
                    if(data1[i].typeNum==value){
                        myArray.push(data1[i].typeName);
                        console.log(myArray)//第一处打印
                    }
                }
            }
        },
        error : function(e) {
            alert("通信失败!");
        }
    });
    console.log(myArray)//第二处打印(不一样)
        for(var i=0;i<myArray.length;i++)//(不执行)
        {
             return myArray;//(循环了很多次不知为什么)
        }



};

把循环去掉直接写返回myArray也不行,在ajax里返回也不行。循环也不执行

问问题要学会问,首先两次不一样,你倒是把两次结果发出来。
第二:

                for(var i=0;i<data1.length;i++)
                {
                    if(data1[i].typeNum==value){
                        myArray.push(data1[i].typeName);     //你判断的是type,输出的是typeName然后插进Array.pu,先不考虑是不是为空,你在循环里打印日志和最后打印日志肯定不同,除非只有一条数据。
                        console.log(myArray)//第一处打印
                    }
                }

第三:

        console.log(myArray)//第二处打印(不一样)   这里输出什么?有数据吗? 没有数据下面循环走不下去。
       for(var i=0;i<myArray.length;i++)//(不执行)  
        {
             return myArray;//(循环了很多次不知为什么)
        }

不执行,说明数组中没有数据哦。