⊗jsSpExcThrT 146 of 294 menu

Выкідванне розных тыпаў выключэнняў у JavaScript

Давайце выкінем сваё выключэнне і паглядзім, як будзе весці сябе аб'ект з памылкай у гэтым выпадку:

try { throw new Error('тэкст выключэння'); } catch (error) { console.log(error.name); // 'Error' console.log(error.message); // 'тэкст выключэння' }

Як вы бачыце, тып нашага выключэння - 'Error'. Такі ж тып будзе ў любых выключэнняў, выкінутых падобным чынам. Гэта, аднак, не заўсёды будзе зручна, так як, калі ў нас могуць быць некалькі выключэнняў, мы не зможам іх адрозніць адзін ад аднаго.

У JavaScript прадугледжана рашэнне гэтай праблемы: можна выкідваць выключэнні не толькі тыпу Error, але і любога ўбудаванага ў JavaScript тыпу памылкі, напрыклад, TypeError, SyntaxError, RangeError.

Давайце для прыкладу выкінем выключэнне тыпу SyntaxError:

try { throw new SyntaxError('тэкст выключэння'); } catch (error) { console.log(error.name); // 'SyntaxError' console.log(error.message); // 'тэкст выключэння' }

Выкіньце выключэнне з тыпам TypeError.

Выкіньце выключэнне з тыпам SyntaxError і RangeError. Злавіце гэтыя выключэнні з дапамогай аднаго блока try. У блоке catch выведзіце розныя паведамленні пра памылку для выключэнняў розных тыпаў.

uzcuzesmsnl