ホームページ >ウェブフロントエンド >jsチュートリアル >文字列の長さをチェックするときに JavaScript コードが誤動作するのはなぜですか?
JavaScript での等価比較を理解する
JavaScript で文字列を操作する場合、等価比較がどのように機能するかを理解することが重要です。次のコード スニペットは、指定された文字列が空白であるか、9 桁以下であるか、または 10 桁以下であるかを確認することを目的としています。ただし、スニペット内の条件ステートメントは予期しない結果をもたらします。
if (str = '') { console.log("The string cannot be blank"); } else if (str.length <p>入力文字列に関係なく、プログラムは一貫して「文字列の長さは少なくとも 9 文字である必要があります」と出力します。この動作は、等号比較で等号 (=) が誤って使用されていることが原因で発生します。</p><p><strong>エラー: 代入と等号が混在しています</strong></p><p>JavaScript では、等号 (=) ) は主に代入に使用され、等価比較には使用されません。等価比較は、二重等号 (==) または三重等号 (===) 演算子を使用して実行する必要があります。</p><p><strong>等価比較の正しいコード:</strong></p><p>正しいバージョンコード スニペットでは、次のように適切な等価演算子を使用する必要があります。</p><pre class="brush:php;toolbar:false">if (str === '') { console.log("The string cannot be blank"); } else if (str.length <p>修正されたコードでは、文字列の長さをチェックします。正しい演算子を使用し、文字列の内容に基づいて異なるメッセージを出力するという期待どおりの動作を提供します。</p>
以上が文字列の長さをチェックするときに JavaScript コードが誤動作するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。