Javascript 为什么增量不保存在条件运算符中?
我想知道为什么这个代码中的计数器在递增后不保存? 我的意思是,现在的行为与我使用的Javascript 为什么增量不保存在条件运算符中?,javascript,if-statement,conditional-statements,increment,Javascript,If Statement,Conditional Statements,Increment,我想知道为什么这个代码中的计数器在递增后不保存? 我的意思是,现在的行为与我使用的if(计数器+1%2)相同。但是++运算符应该永久递增变量 let计数器=0; for(设i=0;i
if(计数器+1%2)
相同。但是++
运算符应该永久递增变量
let计数器=0;
for(设i=0;i<10;i++){
console.log(计数器,'every')
if(counter++%2)console.log(counter,'odd');
}
我想你应该把+
放在计数器前面
let计数器=0;
for(设i=0;i<10;i++){
console.log(计数器,'every')
if(++计数器%2)console.log(计数器,'odd');
}
如果在变量后使用++运算符,它将仅在执行行代码后递增,如果将它放在变量后,它将在行代码前递增。为什么您认为它不保存?计数器正在增加。您正在使用%
测试旧值,而不是增加的值。请使用++counter
前缀而不是后缀。另请参阅: