JavaScript Lint inc_dec_within_stmt警告

Luk*_*ith 3 javascript lint

有人可以解释为什么javascriptlint(而不是jslint)给出警告的原因/重要性

inc_dec_within_stmt - increment (++) and decrement (--) operators used as part of greater statement
Run Code Online (Sandbox Code Playgroud)

当遇到一行代码时

someValue = count++;
Run Code Online (Sandbox Code Playgroud)

我为什么要打开此支票?

Mar*_*off 5

这是一个警告,因为这样的陈述对人类读者来说可能是模棱两可的.

虽然你和我可以看一下并理解它等同于

someValue = count;
count = count + 1;
Run Code Online (Sandbox Code Playgroud)

经验不足的程序员可能错误地将其解释为

someValue = count + 1;
Run Code Online (Sandbox Code Playgroud)

当然,这是最简单的例子.警告更像是一条线路

someValue = (count++) * (--index) / (3 * ++j);
Run Code Online (Sandbox Code Playgroud)

虽然我不能说我曾经在生产代码中看到过这样的一行:)