我想在for
循环的初始化语句中放置多个语句,我做了如下:
for({var i = 0; var j = 1;}; someCondition; i++){
...
}
但这似乎会导致语法错误。一个语句不是可以用{}
替换吗?为什么没有用?有没有办法将多个陈述放在for
参数中?
您可以使用
{ }
创建一个新块来代替语句。但是for
循环需要声明或赋值。
相反,您可以使用 ,
.
for (i = 0, j = 1; someCondition: i++) { ... }
但这似乎会导致语法错误。
是的,确实如此。
单个语句不是可以用 {} 替换吗?
不。
有没有办法将多个语句放入参数中?
没有。
对于此特定情况,您可以使用逗号运算符在单个表达式中设置两个变量的值。
for(i = 0, j = 1; someCondition; i++){
但这绝对是非惯用语。
只需使用逗号将它们分隔开即可。看这里:
for(i = 0, j = 1; i < 5; i++){
console.log(i, j);
}
没有理由期望表达式可由对象重新替换。