如果我从 Crockford 的“Javascript: The Good Parts”中正确回忆,他不赞成使用 ++ 或 -- 运算符,但我也倾向于记得他没有提供特别强烈的反对它们的论据。
下面是这些运算符的使用,我发现它们有助于使我的代码尽可能简洁,特别是在处理返回 -1 的函数/方法时,0 是第一个可能的有效返回值(以及正整数)。我会对 ++ 和/或的其他非典型用法感兴趣——它们强烈支持在有意义时使用这些运算符。
我不认为这是为什么避免 JavaScript 中的自增(“++”)和自减(“--”)运算符的重复?而是推论:何时不避免它们,而是利用它们为您带来优势。当然,我可能会弄错,并且可能有某种原因我没有想到为什么以下内容充满危险,尽管在我看来很优雅——如果我遗漏了以下内容的次优之处,我我也想知道
var substrIdx = str.indexOf(substr);
if (++substrIdx) {
doSomething(--substrIdx);
}