Melemparkan Berbagai Jenis Pengecualian di JavaScript

Mari kita lempar pengecualian kita sendiri dan lihat, bagaimana objek error akan berperilaku dalam kasus ini:

javascripttry {
  throw new Error('teks pengecualian');
} catch (error) {
  console.log(error.name); // 'Error'
  console.log(error.message); // 'teks pengecualian'
}

Seperti yang Anda lihat, jenis pengecualian kita adalah 'Error'. Jenis yang sama akan berlaku untuk semua pengecualian yang dilempar dengan cara seperti ini. Namun, ini tidak selalu akan nyaman, karena jika kita memiliki beberapa pengecualian, kita tidak dapat membedakannya satu sama lain.

JavaScript menyediakan solusi untuk masalah ini: kita dapat melemparkan pengecualian tidak hanya bertipe Error, tetapi juga dari jenis error bawaan JavaScript apa pun, misalnya, TypeError, SyntaxError, RangeError.

Sebagai contoh, mari kita lempar pengecualian bertipe SyntaxError:

javascripttry {
  throw new SyntaxError('teks pengecualian');
} catch (error) {
  console.log(error.name); // 'SyntaxError'
  console.log(error.message); // 'teks pengecualian'
}
Задание 1

Lempar pengecualian dengan tipe TypeError.

Задание 2

Lempar pengecualian dengan tipe SyntaxError dan RangeError. Tangkap pengecualian ini dengan satu blok try. Di dalam blok catch tampilkan pesan error yang berbeda untuk pengecualian yang jenisnya berbeda.