【发布时间】:2018-08-01 20:05:09
【问题描述】:
有人可以向我解释为什么这个语句不起作用吗?
i = (i >= 8 ? 1 : i++);
这个可以吗?
i = (i >= 8 ? 1 : (i + 1));
【问题讨论】:
-
因为一个人从不这样做
i = i++ -
i++递增i并返回 previous 值,而不是递增值。 (还有,Bergi 所说的。) -
阅读后增量与前增量,了解 i++ 的确切含义。它正在工作。
-
非常感谢大家。
-
简化为
i = (i >= 8 ? 0 : i) + 1;或i%=8; i+=1;
标签: javascript ternary