JavaScript'te Çeşitli Hata Türlerinin Fırlatılması

Kendi istisnamızı fırlatalım ve bu durumda hata nesnesinin nasıl davranacağını görelim:

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

Gördüğünüz gibi, istisnamızın türü 'Error'. Benzer şekilde fırlatılan herhangi bir istisnanın türü de aynı olacaktır. Ancak bu, her zaman uygun olmayabilir, çünkü birden fazla istisna olabilirse, onları birbirinden ayırt edemeyiz.

JavaScript'te bu sorunun bir çözümü vardır: sadece Error türünden değil, aynı zamanda JavaScript'te yerleşik olan herhangi bir hata türünden, örneğin TypeError, SyntaxError, RangeError istisnalar fırlatılabilir.

Örnek olarak SyntaxError türünde bir istisna fırlatalım:

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

TypeError türünde bir istisna fırlatın.

Задание 2

SyntaxError ve RangeError türünde istisnalar fırlatın. Bu istisnaları tek bir try bloğu ile yakalayın. catch bloğunda, farklı türlerdeki istisnalar için farklı hata mesajları çıktılayın.