嵌套函数返回undefined

时间:2015-01-30 12:10:10

标签: jquery arrays function

我在函数中有一个函数,它遍历数据对象并返回数组 当我尝试控制台登录时,它的'未定义'

function xyz (arg){
    var arr = [];
    function(){
        while(condition){
            arr.push(string);
        }
        return(arr);
    }
}

console.log( xyz(arg));

//undefined

任何想法?

2 个答案:

答案 0 :(得分:3)

你们中的第一个不要循环任何东西。你的代码实际上有很多错误:

  • arg未使用
  • condition是不确定的
  • string也未定义
  • return不是函数,而是关键字
  • 永远不会执行匿名function(){}

我只能猜你想要做以下事情:

function xyz (arg){
    var arr = [];
    for(item in arg){
        arr.push(item);
    }
    return arg;
} //this gets all the keys from an object and puts it into a list.

答案 1 :(得分:0)

您未定义,因为函数xyz没有返回任何内容。您需要保存该值。

我假设在条件和字符串的位置有实际条件和字符串变量。 所以做这样的事情

function xyz (arg){
    var arr = [];
    var x = function(){
                while(condition){
                     arr.push(string);
                }
                return;
            };
    y = x(); 
    return arr;
}
console.log(xyz("xyz"));