JavaScript プログラムを作成する場合、特定の変数が存在するかどうかを検出する必要があることがよくあります。これは非常に簡単なタスクですが、注意しないといくつかの問題が発生します。主なポイントは次のとおりです。 1. 通常の変数 コードをコピーします は次のとおりです: <br>if(variable){ <br>alert('雨男'); >< /script> <br><br> <br>このとき、「変数が定義されていません」というエラーが表示されます。次のように変更すると、予想されるダイアログ ボックスが表示されます。 🎜></div> <br><br>コードをコピーします<div class="codetitle"> <span><a style="CURSOR: pointer" data="22916" class="copybut" id="copybut22916" onclick="doCopy('code22916')"> コードは次のとおりです。<u></u> </a><script type="text/javascript"> 🎜>if( typeof variable == 'unknown' ) { </span>alert('rain man'); </div> 2.オブジェクトのプロパティ コードをコピー コードは次のとおりです: <スクリプト タイプ="text/javascript"> var two = {}; if(two.b){ alert('雨男'); if( window.addEventListener ){ alert('This is not IE!' ); } のプロパティを検出するために typeof を使用する必要はありません。物体。 3. オブジェクトに属性を追加するときにも、同様の問題が発生します コードをコピー コードは次のとおりです。 <u>var obj = {}; </u>obj.property.number = 2; / このとき、「obj.property が未定義です」というエラーが表示されます。 </a></span>/**</div>* 以下の状況では構文エラーはありませんが、実際にはエラーが発生しています。 <div class="codebody" id="code40411">* プロパティは複合変数に固有であり、obj.property は数値変数であるため、属性を含めることはできません。*/ <br>var obj = {}; <br>obj.property = 2; >obj.property.number = 3; <br><br> </div>