⊗jsSpExcET 138 of 294 menu

JavaScriptで発生する状況の種類

JavaScriptでは、例外が発生する状況は非常に限られています。第一に、そもそも例外が発生する場所が少ないからです。

第二に、言語自体が「寛容」だからです。例えば、ゼロでの除算や不正なHTMLコードなど、多くのことを見過ごします。読み込もうとする画像へのパスが間違っていたとしても、JavaScriptはそれを許容し、例外とは見なしません。

しかし、例外的な状況は存在します。ここでは最も基本的な2つのケースを取り上げ、JavaScriptにおける例外処理の仕組みを学びます。

最初の例外は、不正なJSONを解析しようとしたときに発生します:

let data = JSON.parse('{1,2,3,4,5}'); // このJSONは不正です

2つ目の例外は、当サイトに割り当てられたローカルストレージが満杯(5メガバイトを超える)になったときに発生します。人為的にこの例外を発生させてみましょう:

let str = ''; for (let i = 1; i <= 6 * 10 ** 6; i++) { // 5MBを超える文字列を生成 str += '+'; } localStorage.setItem('key', str); // ストレージへの書き込みを試みる

JavaScriptはこのような例外的状況にどう反応するのでしょうか?単にコンソールにエラーを出力し、スクリプトのそれ以降の実行を停止します。

プログラマとしての我々の課題は、このような状況を捕捉し、プログラムの実行を完全に停止させないように何らかの方法で対処することです。このために、try-catchという特別な構文が用意されており、これは次のレッスンで詳しく見ていきます。

十分に大きなサイズの文字列を作成し、ローカルストレージへの書き込みを試みてください。コンソールにエラーが表示されることを確認しましょう。

不正なJSONの解析を試みてください。コンソールにエラーが表示されることを確認しましょう。

日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否