⊗jsSpExcET 138 of 294 menu

Jenis-jenis Situasi Pengecualian dalam JavaScript

Dalam JavaScript, sangat sedikit situasi di mana pengecualian berlaku. Pertama, semata-mata kerana sangat sedikit tempat untuk ia berlaku.

Kedua, kerana bahasa itu sendiri "sangat memaafkan": ia memandang sebelah mata terhadap banyak perkara, contohnya, pembahagian dengan sifar atau kod HTML yang tidak betul. Walaupun anda memberikan laluan yang salah kepada imej yang ingin dimuatkan, JavaScript akan memaafkannya dan tidak menganggapnya sebagai pengecualian.

Walau bagaimanapun, situasi pengecualian tetap wujud. Kami akan membincangkan dua yang paling mudah dan menggunakan contohnya untuk mempelajari cara mengendalikan pengecualian dalam JavaScript.

Pengecualian pertama berlaku apabila kita mahu menghuraikan JSON yang tidak betul:

let data = JSON.parse('{1,2,3,4,5}'); // json ini tidak betul

Dan pengecualian kedua berlaku apabila storan tempatan yang diperuntukkan untuk tapak web kami penuh (melebihi 5 megabait). Mari kita cetuskan pengecualian sedemikian secara buatan:

let str = ''; for (let i = 1; i <= 6 * 10 ** 6; i++) { // membentuk rentetan lebih 5 mb str += '+'; } localStorage.setItem('key', str); // cuba menulis ke storan

Bagaimana JavaScript bertindak balas terhadap situasi pengecualian sedemikian? Ia hanya melontarkan ralat ke konsol dan menghentikan pelaksanaan skrip selanjutnya.

Tugas kami, sebagai pengaturcara, adalah untuk menangkap situasi sedemikian dan mengatasinya dengan cara tertentu, tanpa membiarkan program berhenti melaksanakan sepenuhnya. Untuk ini terdapat konstruksi khas try-catch, yang akan kita bincangkan dalam pelajaran seterusnya.

Cipta rentetan yang cukup besar dan cuba tulisnya ke dalam storan tempatan. Pastikan bahawa ralat akan muncul di konsol.

Cuba huraikan JSON yang tidak betul. Pastikan bahawa ralat akan muncul di konsol.

idhuplrucs