Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.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中FOR循环中的复杂条件_Javascript - Fatal编程技术网

JavaScript中FOR循环中的复杂条件

JavaScript中FOR循环中的复杂条件,javascript,Javascript,我想知道是否可以在JavaScript中将2条语句声明为FOR循环的条件 for (var i = 0; i < x.length || 10; i++) { } for(变量i=0;i

我想知道是否可以在JavaScript中将2条语句声明为FOR循环的条件

for (var i = 0; i < x.length || 10; i++) {

}
for(变量i=0;i
而不是写作

for (var i = 0; i < x.length; i++) {
    if(i<10) {

    }
}
for(变量i=0;i如果(i如果目标是在
i
到达
10
i
到达数组末尾时结束循环,则可以这样编写:

for (var i=0; i<x.length && i<10; i++) {

for(var i=0;i问题不在于
for
循环的语法,而在于您放置条件语句的方式:

i < x.length || 10

取决于
i
的值和
x

然后,第一个将导致
true
,而后者将导致
10

因此,for
循环将永远持续下去,并不等同于您发布的第二个被剪掉的代码

上面解释了为什么您发布的两个代码片段在功能上并不相同

正确的说法是

for (var i=0; i<x.length && i<10; i++) {

用于(var i=0;iI难道不能像我写的那样简单吗?就像我&&
。否则,如果
x.length
小于10,您将超出范围。@您的解决方案很好,与我之前的解决方案类似国王:国王(var i=0;i在@choxx这个链接中,我知道FOR是如何工作的,我只是想知道是否有可能按照我要求的方式来做。伙计们,问题不在于FOR循环是如何工作的。请记住,当进行向下表决时。那么你必须知道你在Ist部分编写的代码没有任何意义。如果你是一个在FOR中重新分配多个条件,则必须按照标准遵循编码规则。ii < x.length || 10
(i < x.length) || 10
true || 10
false || 10
for (var i=0; i<x.length && i<10; i++) {