Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 嵌套函数返回未定义的_Jquery_Arrays_Function - Fatal编程技术网

Jquery 嵌套函数返回未定义的

Jquery 嵌套函数返回未定义的,jquery,arrays,function,Jquery,Arrays,Function,我在一个函数中有一个函数,它循环遍历数据对象,然后返回数组 当我试图将其记录为“未定义”时 function xyz (arg){ var arr = []; function(){ while(condition){ arr.push(string); } return(arr); } } console.log( xyz(arg)); //undefined 有什么想法吗?首先,你们不要循环

我在一个函数中有一个函数,它循环遍历数据对象,然后返回数组 当我试图将其记录为“未定义”时

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

console.log( xyz(arg));

//undefined

有什么想法吗?

首先,你们不要循环任何东西。实际上,您的代码有很多错误:

  • arg
    未使用
  • 条件
    未定义
  • 字符串
    也未定义
  • return
    不是一个函数,而是一个关键字
  • 匿名
    函数(){}
    从未执行过
我只能猜测你想做以下事情:

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.

由于没有从函数xyz返回任何内容,因此您将处于未定义状态。您需要保存该值

我假设在条件和字符串的地方有实际的条件和字符串变量。 那就这样做吧

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

很抱歉,我在标题限制方面遇到了困难。您能否详细说明您正试图实现的目标,因为我99%确信,如果这项活动奏效,这并不是最好的方式。@Royi我使用Math.floor来表示慷慨;)我认为您应该回到关于javascript的基本教程。你所做的毫无意义。@AhmedAborady这并不能帮助我们回答你的问题。更不用说,嵌套的内部函数永远不会被调用。你可能希望
返回值在
之外,用于
in