为什么分号和逗号在for循环中互换?
在许多语言中(从C到JavaScript的广泛列表): 逗号,分隔参数(例如func(a, b, c)),而 分号;分隔顺序指令(例如instruction1; instruction2; instruction3)。 那么,为什么要使用相同的for循环语言来反转此映射: for ( init1, init2; condition; inc1, inc2 ) { instruction1; instruction2; } 而不是(对我来说似乎更自然) for ( init1; init2, condition, inc1; inc2 ) { instruction1; instruction2; } ? 当然,for(通常)不是一个函数,但是参数(即init,condition,increment)的行为更像指令序列的函数的参数。 是由于历史原因/惯例造成的,还是in ,和;in循环互换的合理依据?