我相当确定这两种方法都可以完成同一件事。由于某些原因,第一个永远不会进入最里面的块。如果条件匹配,则第二种方法将返回false。将递增器置于if条件时会发生什么变化?
if (item.Reject)
{
rejectCount++
if (rejectCount >= maxRejects)
{
return false;
}
}
else rejectCount = 0;
第二种方法:
if (item.Reject)
{
if (++rejectCount >= maxRejects)
{
return false;
}
}
else rejectCount = 0;
最佳答案
根据我刚才写的Jsfiddle的文章进行测试,他们做的完全相同。
我简化了测试条件。但这达到了目的
var rejectCount = 0;
var maxRejects = 2;
function incr1() {
rejectCount++;
if (rejectCount >= maxRejects) {
// return false;
}
alert(rejectCount);
}
function incr2() {
if (++rejectCount >= maxRejects) {
// return false;
}
alert(rejectCount);
}
http://jsfiddle.net/durbnpoisn/j23uhfr0/