Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.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 for循环在0之后停止?_Javascript_Html_Dom_For Loop_Break - Fatal编程技术网

Javascript 我的js for循环在0之后停止?

Javascript 我的js for循环在0之后停止?,javascript,html,dom,for-loop,break,Javascript,Html,Dom,For Loop,Break,我编写了一些js代码来循环浏览html文档,我的循环在0之后停止[这是循环的开始] for (i=0;i<10;i++) { if (jsBox >= 0) { for (i=jsBox;i<documentContent.length;i++) { if (documentContent[i] == '[') { startJs = i; console.log(s

我编写了一些js代码来循环浏览html文档,我的循环在0之后停止[这是循环的开始]

for (i=0;i<10;i++) {
    if (jsBox >= 0) {
        for (i=jsBox;i<documentContent.length;i++) {
            if (documentContent[i] == '[') {
                startJs = i;
                console.log(startJs);
                break;
            }
        };
    } else {
        console.log('Note: no js container found');
    }

    //find end of css
    for (i=startJs;i<documentContent.length;i++) {
        if (documentContent[i] == ']') {
            endJs = i;
            console.log(endJs);
            break;
        }
    }
}
for(i=0;i=0){

对于(i=jsBox;i您在这里重复使用了错误的变量。您在两个内部循环中重复使用i,重置其起始值,然后递增,直到它达到documentContent.length(可能大于10)。然后,outter循环语句将被发现为false(内部循环中的i值已更改),您将从中退出。 我建议您在内部循环中使用不同的变量,这样就不会影响外部循环。(虽然在这里检查outter语句之前,最后一个内部循环设置了I的最后一个值,但在任何一个循环中重复使用都是错误的,必须在两个中都进行更改)

这与代码中的代码有关吗

break;
语句在内部循环中是否也会中断外部循环

不可以。但是内部循环会修改外部循环的计数器变量。您应该使用不同的变量名,并且:


好的,jsBox>=0吗?谢谢,
indexOf('[',jsBox')的jsBox的第二个参数是什么?
如果使用indexOf,如何获得
'['
的位置?请阅读我链接的文档!第二个参数让您指定开始位置(如果您不想从开始搜索)找到的位置就是返回值
// assuming already declared: jsBox, documentContent, startJs, endJs
for (var i=0;i<10;i++) {
    if (jsBox >= 0) {
        for (var j=jsBox; j<documentContent.length; j++) {
            if (documentContent[j] == '[') {
                startJs = j;
                console.log(startJs);
                break;
            }
        }
    } else {
        console.log('Note: no js container found');
    }

    //find end of css
    for (var j=startJs; j<documentContent.length; j++) {
        if (documentContent[j] == ']') {
            endJs = j;
            console.log(endJs);
            break;
        }
    }
}
var startJs = documentContent.indexOf('[', jsBox),
    endJs = documentContent.indexof(']', startJs);