1. ホーム
  2. javascript

[解決済み] JavaScriptでインクリメント("++")とデクリメント("--")演算子を避ける理由は何ですか?

2022-03-14 06:36:17

質問

の1つです。 のヒント jslint ツール があります。

++--
++ (インクリメント)と -- (デクリメント) 演算子は、悪いコードの原因となることが知られています。 過剰なトリッキーさを助長する。これらは 欠陥のあるアーキテクチャに次いで ウイルスやその他の セキュリティの脅威となる。プラスプラスがあります。 オプションで、これらの使用を禁止しています。 演算子を使用します。

のようなPHPの構文があることは知っています。 $foo[$bar++] はオフバイワンエラーになりやすいかもしれませんが、ループを制御するaより良い方法が思いつきませんでした。

while( a < 10 ) do { /* foo */ a++; }

または

for (var i=0; i<10; i++) { /* foo */ }

jslint がない類似の言語があるため、それらを強調表示します。 ++ "と" -- を避ける理由は他にあるのでしょうか? ++ "と" -- "は、私が見逃しているかもしれませんか?

解決方法は?

私の考えでは、++と--は常に1行に単独で使用することです。

i++;
array[i] = foo;

ではなく

array[++i] = foo;

それ以上のことは、プログラマーによっては混乱を招く可能性があり、その価値はないと私は考えています。 Forループは例外で、インクリメント演算子の使用は慣用的であり、したがって常に明確である。