2017-05-31 11 views
0

私は次のことを試みた:JavaScriptでエラーが発生した後でコードを処理する方法はありますか?

window.onerror = function (msg, url, line, col, err) { 
    return true 
} 

それが唯一のコンソールに表示されるのエラーを防止し、しかし、コードが処理されて停止します。その前にReferenceErrorがあるが

alert(IDontExist); 
alert("Hello"); 

二アラートは、ポップアップ表示する必要があります

は、私は、ブラウザがエラーを無視して、次のコードにして、次の行の処理を続行します。

更新1:try...catchは、問題のあるコードが外部になるため、ここに行く方法ではありません。だから、コードはもっと似ている:

インラインHTML:

<script src="problematic.js"></script> 

problematic.jsここ

alert(UndefinedVariable); 
alert("I am valid JS"); 

私がポップアップする "私は、有効なJSだ" たいです。

+1

の内側にあなたの問題の機能をラップするようにしてください。エラーが発生すると、通常のワークフローを破棄し、 'window.error'を使用して印刷します。正しい方法は、そのようなコードを 'try ... catch'の中に置くことです。 – Rajesh

+1

try/catchを使って? – Li357

+0

Rajesh Andrew Li残念ながら、問題のコードがインラインではないので、 'try ... catch'はここでは動作しません。 – Russel

答えて

0

はwindow.error`があなたには良いしないだろう `オーバーライドtry-catch

try{ 
    //Here you put the code that it could crash 
    console.log("Trying to execute the function"); 
    problematicFunction(); 
    //If an error is found, the code will go to catch and stop the try execution 
    console.log("I will never be executed! :c"); 
} catch(e){ 
    //And here you put what to do in case that you have an error 
    console.log("Hey i'm a cool error!\n" + e); 
} 
console.log("Guess what? I still working :D"); 
+0

問題のあるコードは外部にあり、アップデートを見てください。 – Russel

関連する問題