Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.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
Javascript 在循环中调用js函数或嵌套循环,将其中断_Javascript_Function_Loops_Nested - Fatal编程技术网

Javascript 在循环中调用js函数或嵌套循环,将其中断

Javascript 在循环中调用js函数或嵌套循环,将其中断,javascript,function,loops,nested,Javascript,Function,Loops,Nested,此函数假装从csv读取并填充输入字段表。有了行和列,我需要嵌套循环或在循环中调用函数,甚至自己调用函数。我已经试过了所有的组合。在最佳情况下,它仅填充第一行A1、B1、C1等,它确切地知道缓冲区中的起始点,而且它所生成的数字显然是正确的,但是在第一次迭代之后,无论我如何处理关于内部函数、内部循环或嵌套函数的代码,外部循环都会被打破。我试着继续,返回,结束 function getPage(p) { var init = buffer.indexOf("Page:" + p + ",");

此函数假装从csv读取并填充输入字段表。有了行和列,我需要嵌套循环或在循环中调用函数,甚至自己调用函数。我已经试过了所有的组合。在最佳情况下,它仅填充第一行A1、B1、C1等,它确切地知道缓冲区中的起始点,而且它所生成的数字显然是正确的,但是在第一次迭代之后,无论我如何处理关于内部函数、内部循环或嵌套函数的代码,外部循环都会被打破。我试着继续,返回,结束

function getPage(p) {
    var init = buffer.indexOf("Page:" + p + ",");
    var init_index = init + 1;
    var linea = "";
    var r = 1;
    for (var x in buffer) {
        if (x > init_index) {
            linea = buffer[x].split(",");
            read_line(linea, r);
            r++;
        }
    }
}

function read_line(l, r) {
    var debug = new Array();
    var n = 0;
    while (n < l.length + 1) {
        var colons = ["A" + r, "B" + r, "C" + r, "D" + r, "E" + r, "F" + r, "G" + r, "H" + r, "se_ckbox" + r, "me_ckbox" + r, "sim_ckbox" + r, "I" + r, "J" + r, "K" + r, "L" + r, "M" + r, "N" + r, "O" + r, "P" + r, "Q" + r, "R" + r, "S" + r, "T" + r, "U" + r, "V" + r];
        var field = l[n + 1];
        debug.push("col:" + colons[n].toString() + "\nVAL:" + field + "\n");
        document.getElementById(colons[n].toString()).value = field;
        document.getElementById("debug").value = debug.toString();
        n++;
    }
    return;
}

你能提供一些测试数据吗?或者甚至制作一把小提琴?小提琴会很棒的。我现在不知道你在问什么。你有没有试过给长度一个直接值,比如说5,或者做一个伪字符串数组值,然后测试一个假的buffer2,例如buffer2[x],这样你就会知道问题出在哪里或者不出在哪里。数组linea是否总是有多个元素?取第二个元素:var field=l[n+1];另外,我建议将数组显式转换为字符串,用作字段的值。您好,感谢您的快速回复:关于小提琴,我必须了解它是什么。。我试图改变长度,而且,我甚至愚蠢地试图避免像linea=buffer[x]这样的外部循环,;读_linea,r;r++;