有人可以在FOR语句中解释逗号运算符吗?
function funct_1(c){
for (var a = x, e = y; 0 < c; ){
var p = c/2;
var c = c/10; // wtf, it is already defined as function argument!!
}
}
另外,像“a ++”这样的最后一句话似乎不见了,我从未见过这样的事情。那是什么意思?谢谢!
答案 0 :(得分:2)
逗号只是为多个声明添加了分隔。换句话说,您的for
循环设置a
等于x
,e
等于y
。
至于缺少增量语句,它缺失的事实只意味着for
循环不会显式增加任何变量。
答案 1 :(得分:1)
逗号只允许您在循环开始时初始化多个变量。缺少增量运算符意味着循环中必须有一些脚本最终满足终止条件,否则循环永远不会完成。
答案 2 :(得分:0)
C,C ++和JavaScript中的逗号运算符(可能是C#)的工作方式如下:
comma_operator(statement_1, statement_2) {
execute statement_1
return statement_2
}
因此,在循环中,它会初始化两个整数值a
和e
,它们分别设置为x
和y
。没有增量,因为循环正在与c
进行比较,{{1}}可能设置在循环内的某处。