Javascript 关于for循环的说明

Javascript 关于for循环的说明,javascript,Javascript,我在Java和Javascript中见过for循环的这种用法。逻辑决定了它在其他类似C语言中是相同的。这是JavaScript代码: function (startMove, endMove) { var accordionTempOrder; var that = this; var currentModelState = this.model.get('customentries'), temp = currentModelState[startMo

我在Java和Javascript中见过for循环的这种用法。逻辑决定了它在其他类似C语言中是相同的。这是JavaScript代码:

function (startMove, endMove) {
    var accordionTempOrder;
    var that = this;

    var currentModelState = this.model.get('customentries'),
        temp = currentModelState[startMove]; //The last model to be applied
    if (startMove <= endMove) {
        for (var i = 1; i < endMove; i++) {
            if (i >= startMove) {
                source[i] = source[i + 1];
                source[i].ordinal--;                           
            }
        }
        source[endMove] = temp;

        //User dragged competitor box from bottom to top
    } else {
        for (; startMove > endMove; startMove--) {
            source[startMove] = source[startMove - 1];
            source[startMove].ordinal++;
        }
        source[endMove] = temp;
    }         
...
功能(开始移动、结束移动){
var AccordionTemperator;
var=这个;
var currentModelState=this.model.get('customentries'),
temp=currentModelState[startMove];//要应用的最后一个模型
如果(开始移动=开始移动){
源[i]=源[i+1];
来源[i].序数--;
}
}
源[endMove]=温度;
//用户从下到上拖动竞争对手框
}否则{
对于(;开始移动>结束移动;开始移动--){
源[startMove]=源[startMove-1];
source[startMove].ordinal++;
}
源[endMove]=温度;
}         
...
我的问题是什么是使用;在循环中?我需要进一步解释一下这种速记方法。只是糖衣吗?如果有人也能提供同样方法的另一个例子,那将是非常感激的。我喜欢这个速记,也希望在我的代码中使用它,但我不能使用我还不懂的东西:)

根据

块的
语法为

for (initialization; termination;
     increment) {
    statement(s)
}
因此,如果不需要初始化,可以将其保留为空,就像其他部分的wise一样

块的
语法为

for (initialization; termination;
     increment) {
    statement(s)
}

因此,如果不需要初始化,可以将其留空,就像其他部分的wise一样

这意味着循环正在使用外部变量跟踪迭代。这意味着没有
int i=0

实际上,您可以将所有三个部分都省略,因为所有部分都是可选的

for(;;)

并且有一个无限循环。

这意味着循环使用一个外部变量来跟踪迭代。这意味着没有
int i=0

for (; startMove > endMove; startMove--)
实际上,您可以将所有三个部分都省略,因为所有部分都是可选的

for(;;)
有一个无限循环

for (; startMove > endMove; startMove--)
表示(初始化)的第一个参数为nothing

在这种情况下,
startMove
已经有一个值,无需再初始化任何内容

表示(初始化)的第一个参数为nothing


在这种情况下,
startMove
已经有了一个值,无需再初始化任何内容。

for循环语句有三个部分:init、condition和“increment”。对于您的问题,不需要任何初始化;在循环之前不需要做任何事情,但仍然需要其他两部分。这些部分用分号分隔。

for循环语句有三个部分:init、condition和“increment”。对于您的问题,不需要任何初始化;在循环之前不需要做任何事情,但仍然需要其他两部分。这些部分用分号分隔。

第一个维基百科结果将为您提供以下信息:

for(INITIALIZATION; CONDITION; INCREMENT/DECREMENT){
    // Code for the for loop's body
    // goes here.
}
如果不需要,任何字段都可以留空

例如,下一行表示永远继续,因为没有停止条件

for (var i = 1; ; i++) {

第一个维基百科结果将告诉您:

for(INITIALIZATION; CONDITION; INCREMENT/DECREMENT){
    // Code for the for loop's body
    // goes here.
}
如果不需要,任何字段都可以留空

例如,下一行表示永远继续,因为没有停止条件

for (var i = 1; ; i++) {

的循环有一个语法

for(initialization; condition; increment/decrement/looping condition) {
  // CODE here
}
这是函数的语法,如果不需要在for循环中使用上述任何条件,可以将其保留为空

例如我们有

var itr = 0;
for(; itr<10; itr++) {
  // Do something
}
var-itr=0;

for(;itrfor循环有一个语法

for(initialization; condition; increment/decrement/looping condition) {
  // CODE here
}
这是函数的语法,如果不需要在for循环中使用上述任何条件,可以将其保留为空

例如我们有

var itr = 0;
for(; itr<10; itr++) {
  // Do something
}
var-itr=0;
对于(;itr对于我来说,这张图片足以理解for循环。

正如在将其视为有效建议后在评论中所建议的那样,让我补充一些要点

for循环有三个主要部分

  • 初始化部分仅工作一次,可选
  • 为每个迭代检查条件
  • 每次迭代后进行的修改(增加/减少)
但请注意无限循环的一点所有三个部分都是可选的。(即,
for(;;)

对我来说,这张图片足以理解for循环。

正如在将其视为有效建议后在评论中所建议的那样,让我补充一些要点

for循环有三个主要部分

  • 初始化部分仅工作一次,可选
  • 为每个迭代检查条件
  • 每次迭代后进行的修改(增加/减少)

但请注意无限循环的一件事所有三个部分都是可选的(即,
for(;)

for
不是一个函数。在JavaScript中不是。在JavaScript中(链接到的页面一开始甚至说“
for
语句”),当然在C中也不是。
for
不是一个函数。在JavaScript中不是(链接到的页面甚至在一开始就写着“
for
statement”),当然不是在C中。除了javascript,我已经删除了语言标记。虽然它是等效的语法,但不同语言之间的用法有时会有所不同,这会导致答案混淆。在这种情况下,我不相信答案会有任何不同,但我没有使用太多的javascriptI我已经删除了语言标记except用于javascript。虽然它是等效语法,但有时不同语言之间的用法会有所不同,这会导致答案混淆。在这种情况下,我不相信答案会有任何不同-但我不会使用那么多javascript-1,在我看来,将答案的所有文本放在不可搜索的图像中是不好的形式。Rem余烬:即使是链接到文本答案的答案也被认为是su