サイト上の他の JS コードが失敗するかどうかに関係なく実行される Javascript を作成することは可能ですか? これまでの私の経験では、JS がエラーをスローすると、それを続行するはずの他のすべてのコードが機能しなくなります。常に機能するものを書くことは可能ですか?また、サイト上のすべての JS コードを制御することもできません。
アイデア?
サイト上の他の JS コードが失敗するかどうかに関係なく実行される Javascript を作成することは可能ですか? これまでの私の経験では、JS がエラーをスローすると、それを続行するはずの他のすべてのコードが機能しなくなります。常に機能するものを書くことは可能ですか?また、サイト上のすべての JS コードを制御することもできません。
アイデア?
はい、しかしそれには多少の努力が必要です。f
メソッドを持つフレームワークを使用していると想像してくださいx
。これを試して:
<script src="...."> // load the real "f"
<script>
if (type f === 'undefined') { f = {}; }
if (type f.x === 'undefined') { f.x = function() {}; }
....
</script>
リモート スクリプトがロード/実行に失敗した場合f
でも、定義されます。スクリプトのチェックにより、f.x
心配したり、try{}catch
.
zzzzBov が彼の fiddleで示したように、フレームワーク スクリプトで障害が発生すると、その実行が中止されるだけです。エラーを処理した後 (通常はコンソールにログを記録)、ブラウザーは次のscript
要素に進みます。