JavaScript で増分 ("++") 演算子と減分 ("--") 演算子を避けるのはなぜですか? 質問する

JavaScript で増分 (

の1つjslintツールのヒントは:

++--(インクリメント) 演算子と
(デクリメント) 演算子は、過度のトリックを助長することで、悪いコードの一因になることが知られています。これらは、ウイルスやその他のセキュリティ上の脅威を引き起こす点で、欠陥のあるアーキテクチャに次いで 2 番目に悪影響を及ぼします。これらの演算子の使用を禁止する plusplus オプションがあります。++--

次のような PHP 構造では簡単に off-by-one エラーが発生する可能性があることはわかっています$foo[$bar++]が、ループを制御するより良い方法がわかりません。

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

または

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

これらを強調表示しているのjslintは、類似の言語の中に「++」と「」の構文が欠落しているか、異なる方法で処理している言語がいくつかあるためでしょうか、それとも私が見逃している「 」と「 」--を避ける他の根拠があるのでしょうか?++--

ベストアンサー1

私の考えでは、次のように ++ と -- を常に 1 行で単独で使用します。

i++;
array[i] = foo;

の代わりに

array[++i] = foo;

それ以上のことは、一部のプログラマーを混乱させる可能性があり、私の見解では、それだけの価値はありません。for ループは例外で、インクリメント演算子の使用は慣用的であり、常に明確です。

おすすめ記事