ホームページ > 記事 > ウェブフロントエンド > JavaScript の互換性とデバッグ スキル
JavaScript の互換性に関して、最も遅い方法は jQuery のツール機能を使用することです。多くのブラウザでは関数が見つからないというエラーが報告されるため、ECMAScript などの関数は使用しないでください。以下に、開発プロセス中に発生した JavaScript の問題をいくつか示します。
1. パラメータリストに複数のカンマが含まれています。
$.ajax({}) メソッド、よくご存知ですが、IE ではパラメータリストを結合するときに最後にカンマを追加すると、 JS ではすべてのパラメータが失われるのではないかと思われます。
デバッグ中に次のエラーが報告されます:
識別子、文字列、または数値が欠落しています
2. var str; と var str="" の違い
2 つの出力結果は次のとおりです:
1回目:
2回目: 変数は、定義時に値が割り当てられていない場合、未定義です。文字列の追加は未定義+「追加する文字列」です。次のように HTML 要素に値を代入するとします。 「未定義」も表示されますので、注意する必要があります。3. IE のキャッシュされた JS のデバッグ
今日デバッグをしていたら、IE8 の JS キャッシュが非常に横暴であることがわかりました。キャッシュを更新およびクリアしても効果はありません。マウスの左ボタンがほぼ壊れるまで更新されますが、それでも更新されません。
それでは、JSを導入する際に最後にnew Date()を追加するという特別なトリックについてお話します。こうすることで、それほど熱心にリフレッシュする必要がなくなります。
4. JS は関数/変数が存在するかどうかを判断し、存在する場合は、 call
javascript ifの条件としてnull、unknown、0、""、falseを使用した場合、それらはfalseとみなされます。
つまり、変数については、この判断に基づいて変数 var str = ""; を定義しても、 false が返されます。
りー