„JavaScript“ metimo pareiškimas

Šioje pamokoje su pavyzdžių pagalba sužinosite apie „JavaScript“ metimo teiginius.

Ankstesnėje pamokoje išmokote tvarkyti išimtis naudodamas „JavaScript try… catch utasítás“. „Try and catch“ teiginiai išimtis tvarko standartiniu būdu, kurį teikia „JavaScript“. Tačiau throwteiginį galite naudoti norėdami perduoti vartotojo nustatytas išimtis.

„JavaScript“ throwsakinyje tvarkomos vartotojo nustatytos išimtys. Pvz., Jei tam tikras skaičius yra padalintas iš 0 ir jei jums reikia atsižvelgti į tai Infinitykaip išimtį, galite naudoti throwteiginį šiai išimčiai tvarkyti.

„JavaScript“ metimo pareiškimas

Mesti teiginio sintaksė yra tokia:

 throw expression;

Čia expressionnurodoma išimties vertė.

Pavyzdžiui,

 const number = 5; throw number/0; // generate an exception when divided by 0

Pastaba : išraiška gali būti eilutė, loginė reikšmė, skaičius arba objekto reikšmė.

„JavaScript“ metimas bandant… pagauti

Sintaksė try… catch… throwyra:

 try ( // body of try throw exception; ) catch(error) ( // body of catch )

Pastaba : Kai metimo sakinys yra įvykdytas, jis išeina iš bloko ir eina į catchbloką. Ir kodas žemiau throwpareiškimo nėra vykdomas.

1 pavyzdys: pabandyk … pagauti … mesti pavyzdys

 const number = 40; try ( if(number> 50) ( console.log('Success'); ) else ( // user-defined throw statement throw new Error('The number is low'); ) // if throw executes, the below code does not execute console.log('hello'); ) catch(error) ( console.log('An error caught'); console.log('Error message: ' + error); )

Rezultatas

 Gauta klaida Klaidos pranešimas: Klaida: skaičius yra mažas

Pirmiau pateiktoje programoje tikrinama sąlyga. Jei skaičius yra mažesnis nei 51 , išmetama klaida. Ir ši klaida išmetama naudojant throwteiginį.

throwPareiškimas nurodo eilutę The number is lowkaip išraiška.

Pastaba : Jūs taip pat galite naudoti ir kitus įmontuotą klaidos konstruktoriai standartinių klaidų: TypeError, SyntaxError, ReferenceError, EvalError, InternalError, ir RangeError.

Pavyzdžiui,

 throw new ReferenceError('this is reference error');

Išmeskite išimtį

Taip pat galite naudoti throwsakinį catchbloko viduje, kad galėtumėte peržiūrėti išimtį. Pavyzdžiui,

 const number = 5; try ( // user-defined throw statement throw new Error('This is the throw'); ) catch(error) ( console.log('An error caught'); if( number + 8> 10) ( // statements to handle exceptions console.log('Error message: ' + error); console.log('Error resolved'); ) else ( // cannot handle the exception // rethrow the exception throw new Error('The value is low'); ) )

Rezultatas

 Užfiksuota klaida Klaidos pranešimas: Klaida: Tai metimo klaida išspręsta

Pirmiau pateiktoje programoje throwsakinys naudojamas trybloke, kad būtų gauta išimtis. Ir throwteiginys rethrown į catchbloką, kuris bus įvykdytas, jei catchblokas negali tvarkyti išimtis.

Čia catchblokas tvarko išimtį ir klaidos neįvyksta. Taigi, throwpareiškimas nėra pakartotinas.

Jei klaidos nepadarė sugavimo blokas, metimo sakinys bus pateiktas su klaidos pranešimu Nepatvirtinta klaida: vertė yra maža

Įdomios straipsniai...