⊗jsSpExcNC 141 of 294 menu

Interceptarea excepțiilor în codul imbricat în JavaScript

Particularitatea și comoditatea excepțiilor constă în faptul că acestea pot fi prinse la orice nivel de imbricare a codului. Să privim un exemplu. Să presupunem că avem o funcție care salvează date în stocarea locală:

function save(str) { localStorage.setItem('key', str); }

După cum știți deja, la depășirea stocării, metoda setItem va arunca o excepție. Nu este obligatoriu, totuși, să prindem această excepție în interiorul funcției save. Putem înfășura fiecare apel al funcției în try:

try { save('un șir oarecare'); } catch (error) { alert('s-a epuizat spațiul în stocarea locală!'); }

Este dată o funcție care transformă JSON într-un array:

function getArr(json) { return JSON.parse(json); }

În următorul cod din JSON se obține un array:

let arr = getArr('[1,2,3,4,5]'); console.log(arr);

Înfășurați apelul funcției în construcția try-catch.

idhutrsvka