Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.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 当条件未终止时_Javascript - Fatal编程技术网

Javascript 当条件未终止时

Javascript 当条件未终止时,javascript,Javascript,我这里的问题是while条件正在执行,但是当长度变为零时。。。它没有出来。。。并执行fnName以检查其是否应为零 if(childrens are present) { while(childrens.length ! ==0) { do something } } // Execute this function fnName() 如果这是一个输入错误,另一个问题可能是您没有减少while循环中的子项。因此,它会进入一个无限循环。检查不等

我这里的问题是while条件正在执行,但是当长度变为零时。。。它没有出来。。。并执行fnName

以检查其是否应为零

if(childrens are present) {

   while(childrens.length ! ==0) {

            do something

    }
}   

// Execute this function fnName()

如果这是一个输入错误,另一个问题可能是您没有减少while循环中的子项。因此,它会进入一个无限循环。

检查不等于零时,它应该是

if(childrens are present) {

   while(childrens.length ! ==0) {

            do something

    }
}   

// Execute this function fnName()

如果这是一个输入错误,另一个问题可能是您没有减少while循环中的子项。因此,它进入一个无限循环。

如果实际上要从循环中的数组中删除子元素,那么除了运算符上的间距错误之外,这应该没问题;应该是,不是

请注意,要从数组中实际删除子元素,必须使用数组mutator方法之一,如pop或splice。我猜你没那么做

更正常的做法是在不改变数组的情况下循环数组:

while(childrens.length !== 0) {

旁注:children这个词已经是复数了,单数是child,所以结尾没有s。只有一个English的不规则复数有几个。

如果你真的要从循环中的数组中删除子元素,那应该没问题,只是你在操作符上的间距错了;应该是,不是

请注意,要从数组中实际删除子元素,必须使用数组mutator方法之一,如pop或splice。我猜你没那么做

更正常的做法是在不改变数组的情况下循环数组:

while(childrens.length !== 0) {

旁注:children这个词已经是复数了,单数是child,所以结尾没有s。English的不规则复数中只有一个有几个。

通常的策略是将children创建为数组或类似对象,该数组或类似对象具有在进入循环时检查的一致属性,在条件为真时继续

在这种情况下,最好将children创建为数组,然后在循环中递减,以便:

childrens.forEach(function(child) {
    // Use `child` for each child
});

因此,当childrens.length为零时,测试为false,循环退出,或者如果childrens.length开始时为零,则永远不会输入。

通常的策略是将childrens创建为数组或类似对象,该数组或类似对象具有在进入循环时检查的一致属性,在条件为true时继续

在这种情况下,最好将children创建为数组,然后在循环中递减,以便:

childrens.forEach(function(child) {
    // Use `child` for each child
});

因此,当childrens.length为零时,测试为false,循环退出,或者如果childrens.length开始时为零,则永远不会输入。

演示问题的后期工作代码,而不是伪代码–code.必须是关于!==。请尝试发布演示问题的工作代码,而不是伪代码。必须是关于!==。尝试FWIW,而ar.length!==0 ; 实际上是一个语法错误,而不是一个无限循环!FWIW,而ar.length!==0 ; 实际上是一个语法错误,而不是一个无限循环!