Wprowadzenie do błędów w JavaScript

Zacznijmy od dyskusji na temat tego, co „błąd” oznacza w języku programowania, szczególnie w JavaScript. Błąd można zdefiniować jako błąd, niepoprawną instrukcję lub błędną interpretację lub błąd, ale ta definicja nie jest dokładnie poprawna podczas opracowywania programu. W programowaniu błąd jest sekcją lub częścią kodu, która przerywa normalny przepływ programu. W każdym języku programowania występują zazwyczaj trzy rodzaje błędów, które można napotkać,

  1. Błędy czasu kompilacji
  2. Błędy logiczne
  3. Błędy czasu wykonania.

Często boimy się, gdy napotkamy jakiekolwiek błędy, ale błędy są dobre, ponieważ uczymy się, jak nie robić czegoś i jak zrobić to lepiej następnym razem.

W JavaScript, jeśli skrypt zgłosi błąd, interpreter JavaScript zatrzyma natychmiastowe wykonanie programu i wyświetli ten błąd w konsoli przeglądarki wraz z błędem i numerem wiersza, w którym wystąpił w pliku. Jedynym sposobem, w jaki możemy debugować nasz JavaScript, jest najlepsze wykorzystanie błędów i ostrzeżeń i znalezienie przyczyny.

Rodzaje błędów w JavaScript

Błąd może, ale nie musi, mieć fatalnego skutku dla naszej aplikacji, w zależności od rodzaju napotkanego błędu. Istnieje sześć rodzajów błędów, które zwykle występują w JavaScript -

  • Błąd ewaluacyjny
  • Błąd zakresu
  • Błąd odniesienia
  • Błąd składni
  • Wpisz błąd
  • Błąd URI

Omówmy szczegółowo każdy z tych błędów.

Nazwa błędu

Opis

EvalErrorWystąpił błąd w funkcji eval ()
RangeErrorWystąpił numer „poza zakresem”
ReferenceErrorWystąpiło nielegalne odwołanie
Błąd składniWystąpił błąd składniowy
TypeErrorWystąpił błąd typu
URIErrorWystąpił błąd w encodeURI ()

1. EvalError: Wskazuje błąd w globalnej funkcji eval (), tzn. Funkcja eval () jest używana w niewłaściwy sposób. Nowsze wersje JavaScript nie generują już tego błędu, zamiast tego opiera się na błędzie składni.

2. RangeError: Ten błąd jest generowany, gdy parametr lub wartość (numeryczna) jest poza lub przekracza dozwolony zakres.

3. ReferenceError: Ten błąd jest zgłaszany, gdy odnosimy się do zmiennej, która nie istnieje (używane jest nieprawidłowe odwołanie), tj. Ta zmienna nie została zadeklarowana. Jest to jeden z najczęstszych i najczęściej występujących błędów.

4. Błąd składni : ten błąd wskazuje, że składnia skryptu jest nieprawidłowa, tzn. W kodzie znajduje się niepoprawna instrukcja składniowa. Jeśli chodzi o błędy składniowe, interpretowany język, taki jak JavaScript, nie wyrzuci ich, dopóki skrypt nie zostanie załadowany i odczytany przez przeglądarkę.

5. TypeError: Ten błąd jest zgłaszany, gdy wartość nie jest poprawnego typu, zgodnie z oczekiwaniami lub nieprawidłowy typ danych jest używany do deklarowania lub definiowania zmiennej. Przykład: wykonywanie obliczeń numerycznych na zmiennej String lub obiekcie.

6. URIError: Ten błąd wskazywał na użycie niedozwolonych znaków, które są nieprawidłowe w metodach / funkcjach związanych z URI (encodeURI () lub decodeURI ()).

Obsługa błędów w JavaScript

Kiedy wystąpi błąd, wiemy, że skrypt przestaje działać, chyba że zajmiemy się tymi błędami w samym skrypcie, aby nie zakłócać normalnego przepływu programu. Różne sposoby implementacji tych błędów:

try …. catch block
try (
// errorneous statement
) catch (err) (
console.error (err)
// stmts
)

Wreszcie

W niektórych sytuacjach istnieją pewne sekcje skryptu, które należy wykonać niezależnie od tego, czy wystąpi błąd, i tę część sekcji należy napisać w bloku ostatecznie.

try (
// errorneous statement
) catch (err) (
console.error (err)
// stmts
) finally(
//mandatory statements to run
)

Obietnice

Obietnice są używane do obsługi operacji asynchronicznych, które mogą spowodować błąd. Mogą zarządzać wieloma operacjami asynchronicznymi i zapewniają lepsze rozwiązania w zakresie obsługi błędów w porównaniu z wywołaniami zwrotnymi i zdarzeniami.

var promise = new Promise(
function(resolve, reject)(
//do something
)
);

Przykład:

function captureErrorTypes() (
try (
var sum = x + y;
alert(sum);
) catch(error) (
switch (error.name) (
case 'SyntaxError':
alert("caught a " + error.name + ": " + error.message);
//handle error…
break;
case 'RangeError':
alert("caught a " + error.name + ": " + error.message);
//handle error…
break;
case 'ReferenceError':
alert("caught a " + error.name + ": " + error.message);
//handle error…
break;
default:
alert("caught a " + error.name + ": " + error.message);
//handle all other error types here…
break;
)
)
)

Polecane artykuły

To jest przewodnik po błędach w JavaScript. Tutaj omawiamy błędy javascript i ich znaczenie w dowolnym języku programowania wraz z typem, który zwykle występuje w javascript. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -

  1. Działanie enkapsulacji w JavaScript
  2. Kompilatory JavaScript
  3. Jak działa pętla while w JavaScript?
  4. Dlaczego JavaScript rozróżnia małe i duże litery, a HTML nie?
  5. Rzut vs Rzuty | 5 najważniejszych różnic, które powinieneś znać
  6. 10 najlepszych wersji Java z funkcjami