尽管存在终止条件,为什么无限循环仍然存在?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了尽管存在终止条件,为什么无限循环仍然存在?相关的知识,希望对你有一定的参考价值。

此函数用于从两个输入类型文本值中创建动态表。

第二个for无限循环虽然有一个条件,j小于输入值(col)。我尝试了[row = 5 columns = 5]的值,但仍然得到无限循环。

function addtable(){

    var row = document.getElementById('row1').value;
    var col = document.getElementById('col1').value;
    if( row === "" || col === ""){alert("Please Enter Row & Column values");}
    //console.log(row*col);
    table = document.createElement('table');
    //table.id='Ntables';
    console.log(table);
    var i = 0;

    for( i; i <(row+1) ; i++)
    {
        var tr = document.createElement('tr');
        //tr.id='Ntablerows';
        console.log(tr);
        table.appendChild(tr);
        var j = 0;

        for(j; j < (col+1); j++)
        {
            var td = document.createElement('td');
            console.log(td);
            tr.appendChild(td);
            //td.id='Ntablecols'
            var input = document.createElement('input');
            input.type = 'text';
            //input.id = 'Ntableinput';
            td.appendChild(input);
        }
     }
     return (0);
}

编辑:它不是一个无限循环,它是一个连接到循环变量的数字。使它比预期更大。

enter image description here

答案

试试这个:

var row = document.getElementById('row1').value;
var col = document.getElementById('col1').value;
if( row === "" || col === ""){alert("Please Enter Row & Column values");}
row = parseInt( row )
col = parseInt( col )

以上是关于尽管存在终止条件,为什么无限循环仍然存在?的主要内容,如果未能解决你的问题,请参考以下文章

尽管条件仍然成立,为啥这个 for 循环似乎没有执行?

尽管依赖项没有变化,useEffect 运行无限循环

无限循环与嵌套循环

尽管存在索引,但未定义的索引仍然存在

00014_无限循环

联系仍然存在时被终止