Bắt ngoại lệ trong mã lồng nhau trong JavaScript

Đặc điểm và sự tiện lợi của ngoại lệ là chúng có thể được bắt ở bất kỳ mức độ lồng nhau nào của mã. Hãy xem xét một ví dụ. Giả sử chúng ta có một hàm lưu dữ liệu vào bộ nhớ cục bộ:

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

Như bạn đã biết, khi bộ nhớ đầy, phương thức setItem sẽ ném ra một ngoại lệ. Tuy nhiên, không nhất thiết phải bắt ngoại lệ này bên trong hàm save. Có thể bọc mỗi lần gọi hàm đó trong try:

javascripttry {
  save('một chuỗi nào đó');
} catch (error) {
  alert('hết chỗ trong bộ nhớ cục bộ!');
}
Задание 1

Cho một hàm chuyển đổi JSON thành mảng:

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

Trong đoạn mã sau, một mảng được lấy từ JSON:

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

Hãy bọc lời gọi hàm trong cấu trúc try-catch.