Hướng dẫn how do you use javascript errors? - làm thế nào để bạn sử dụng các lỗi javascript?


Ném, và thử ... bắt ... cuối cùng

Câu lệnh try xác định một khối mã để chạy (để thử).

Câu lệnh catch xác định một khối mã để xử lý mọi lỗi.

Câu lệnh finally xác định một khối mã để chạy bất kể kết quả.

Câu lệnh throw xác định lỗi tùy chỉnh.


Lỗi sẽ xảy ra!

Khi thực hiện mã JavaScript, các lỗi khác nhau có thể xảy ra.

Lỗi có thể là lỗi mã hóa do lập trình viên thực hiện, lỗi do đầu vào sai và những thứ không lường trước khác.

Thí dụ

Trong ví dụ này, chúng tôi đã viết sai chính tả "cảnh báo" là "adddlert" để cố tình tạo ra lỗi:

thử {& nbsp; addDlert ("khách chào mừng!");} Catch (err) {& nbsp; document.getEuityById ("demo"). innerHtml = err.message;}
try {
  adddlert("Welcome guest!");
}
catch(err) {
  document.getElementById("demo").innerHTML = err.message;
}

Hãy tự mình thử »

JavaScript bắt AddDlert là một lỗi và thực thi mã bắt để xử lý nó.adddlert as an error, and executes the catch code to handle it.


JavaScript thử và bắt

Câu lệnh try cho phép bạn xác định một khối mã được kiểm tra các lỗi trong khi nó đang được thực thi.

Câu lệnh catch cho phép bạn xác định một khối mã được thực thi, nếu xảy ra lỗi trong khối thử.

Các câu lệnh JavaScript trycatch có theo cặp:

thử {& nbsp; Khối mã để thử} Catch (err) {& nbsp; Khối mã để xử lý lỗi}
  Block of code to try
}
catch(err) {
  Block of code to handle errors
}



JavaScript ném lỗi

Khi xảy ra lỗi, JavaScript thường sẽ dừng và tạo thông báo lỗi.

Thuật ngữ kỹ thuật cho điều này là: JavaScript sẽ ném một ngoại lệ (ném lỗi).throw an exception (throw an error).

JavaScript thực sự sẽ tạo một đối tượng lỗi với hai thuộc tính: tên và tin nhắn.Error object with two properties: name and message.


Tuyên bố ném

Câu lệnh throw cho phép bạn tạo một lỗi tùy chỉnh.

Về mặt kỹ thuật, bạn có thể ném một ngoại lệ (ném một lỗi).throw an exception (throw an error).

Ngoại lệ có thể là JavaScript String, catch0, catch1 hoặc catch2:

ném "quá lớn"; & nbsp; & nbsp; & nbsp; // ném một văn bản ném 500; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; // Ném một số
throw 500;          // throw a number

Nếu bạn sử dụng throw cùng với trycatch, bạn có thể kiểm soát luồng chương trình và tạo các thông báo lỗi tùy chỉnh.


Ví dụ xác thực đầu vào

Ví dụ này kiểm tra đầu vào. Nếu giá trị sai, một ngoại lệ (ERR) sẽ bị ném.

Ngoại lệ (ERR) bị bắt bởi câu lệnh Catch và thông báo lỗi tùy chỉnh được hiển thị:



thử {& nbsp; addDlert ("khách chào mừng!");} Catch (err) {& nbsp; document.getEuityById ("demo"). innerHtml = err.message;}

Hãy tự mình thử »

JavaScript bắt AddDlert là một lỗi và thực thi mã bắt để xử lý nó.
function myFunction() {
  const message = document.getElementById("p01");
  message.innerHTML = "";
  let x = document.getElementById("demo").value;
  try {
    if(x == "") throw "empty";
    if(isNaN(x)) throw "not a number";
    x = Number(x);
    if(x < 5) throw "too low";
    if(x > 10) throw "too high";
  }
  catch(err) {
    message.innerHTML = "Input is " + err;
  }
}


Hãy tự mình thử »


JavaScript bắt AddDlert là một lỗi và thực thi mã bắt để xử lý nó.

JavaScript thử và bắt

Câu lệnh try cho phép bạn xác định một khối mã được kiểm tra các lỗi trong khi nó đang được thực thi.

thử {& nbsp; addDlert ("khách chào mừng!");} Catch (err) {& nbsp; document.getEuityById ("demo"). innerHtml = err.message;}


Hãy tự mình thử »

JavaScript bắt AddDlert là một lỗi và thực thi mã bắt để xử lý nó.

JavaScript thử và bắt

Câu lệnh try cho phép bạn xác định một khối mã được kiểm tra các lỗi trong khi nó đang được thực thi.
  Block of code to try
}
catch(err) {
  Block of code to handle errors
}
finally {
  Block of code to be executed regardless of the try / catch result
}

Thí dụ

Trong ví dụ này, chúng tôi đã viết sai chính tả "cảnh báo" là "adddlert" để cố tình tạo ra lỗi:
  const message = document.getElementById("p01");
  message.innerHTML = "";
  let x = document.getElementById("demo").value;
  try {
    if(x == "") throw "is empty";
    if(isNaN(x)) throw "is not a number";
    x = Number(x);
    if(x > 10) throw "is too high";
    if(x < 5) throw "is too low";
  }
  catch(err) {
    message.innerHTML = "Error: " + err + ".";
  }
  finally {
    document.getElementById("demo").value = "";
  }
}

Hãy tự mình thử »


JavaScript bắt AddDlert là một lỗi và thực thi mã bắt để xử lý nó.

JavaScript thử và bắt

Câu lệnh try cho phép bạn xác định một khối mã được kiểm tra các lỗi trong khi nó đang được thực thi.


Câu lệnh catch cho phép bạn xác định một khối mã được thực thi, nếu xảy ra lỗi trong khối thử.

Các câu lệnh JavaScript trycatch có theo cặp: thử {& nbsp; Khối mã để thử} Catch (err) {& nbsp; Khối mã để xử lý lỗi}
JavaScript ném lỗiKhi xảy ra lỗi, JavaScript thường sẽ dừng và tạo thông báo lỗi.
Thuật ngữ kỹ thuật cho điều này là: JavaScript sẽ ném một ngoại lệ (ném lỗi).JavaScript thực sự sẽ tạo một đối tượng lỗi với hai thuộc tính: tên và tin nhắn.

Tuyên bố ném

Câu lệnh throw cho phép bạn tạo một lỗi tùy chỉnh.

Về mặt kỹ thuật, bạn có thể ném một ngoại lệ (ném một lỗi). thử {& nbsp; Khối mã để thử} Catch (err) {& nbsp; Khối mã để xử lý lỗi}
JavaScript ném lỗiKhi xảy ra lỗi, JavaScript thường sẽ dừng và tạo thông báo lỗi.
Thuật ngữ kỹ thuật cho điều này là: JavaScript sẽ ném một ngoại lệ (ném lỗi).JavaScript thực sự sẽ tạo một đối tượng lỗi với hai thuộc tính: tên và tin nhắn.
Tuyên bố némCâu lệnh throw cho phép bạn tạo một lỗi tùy chỉnh.
Lỗi cú phápĐã xảy ra lỗi cú pháp
Kiểu hàngMột lỗi đã xảy ra
UrierrorMột lỗi trong encodeuri () đã xảy ra

Sáu giá trị khác nhau được mô tả dưới đây.


Lỗi đánh giá

Một catch7 chỉ ra một lỗi trong hàm eval ().

Các phiên bản mới hơn của JavaScript không ném Evalerror. Sử dụng cú pháp thay thế.


Lỗi phạm vi

Một catch8 bị ném nếu bạn sử dụng một số nằm ngoài phạm vi của các giá trị pháp lý.

Ví dụ: bạn không thể đặt số chữ số đáng kể của một số thành 500.

Thí dụ

Đặt Num = 1; thử {& nbsp; num.toprecision (500); & nbsp; & nbsp; // Một số không thể có 500 chữ số quan trọng} Catch (err) {& nbsp; document.getEuityById ("demo"). innerHtml = err.Name; }
try {
  num.toPrecision(500);   // A number cannot have 500 significant digits
}
catch(err) {
  document.getElementById("demo").innerHTML = err.name;
}

Hãy tự mình thử »


Lỗi tham chiếu

Một catch9 bị ném nếu bạn sử dụng (tham chiếu) một biến chưa được khai báo:

Thí dụ

Đặt Num = 1; thử {& nbsp; num.toprecision (500); & nbsp; & nbsp; // Một số không thể có 500 chữ số quan trọng} Catch (err) {& nbsp; document.getEuityById ("demo"). innerHtml = err.Name; }
try {
  x = y + 1;   // y cannot be used (referenced)
}
catch(err) {
  document.getElementById("demo").innerHTML = err.name;
}

Hãy tự mình thử »


Lỗi tham chiếu

Một catch9 bị ném nếu bạn sử dụng (tham chiếu) một biến chưa được khai báo:

Thí dụ

Đặt Num = 1; thử {& nbsp; num.toprecision (500); & nbsp; & nbsp; // Một số không thể có 500 chữ số quan trọng} Catch (err) {& nbsp; document.getEuityById ("demo"). innerHtml = err.Name; }
  eval("alert('Hello)");   // Missing ' will produce an error
}
catch(err) {
  document.getElementById("demo").innerHTML = err.name;
}

Hãy tự mình thử »


Lỗi tham chiếu

Một catch9 bị ném nếu bạn sử dụng (tham chiếu) một biến chưa được khai báo:

Thí dụ

Đặt Num = 1; thử {& nbsp; num.toprecision (500); & nbsp; & nbsp; // Một số không thể có 500 chữ số quan trọng} Catch (err) {& nbsp; document.getEuityById ("demo"). innerHtml = err.Name; }
try {
  num.toUpperCase();   // You cannot convert a number to upper case
}
catch(err) {
  document.getElementById("demo").innerHTML = err.name;
}

Hãy tự mình thử »


Lỗi tham chiếu

Một catch9 bị ném nếu bạn sử dụng (tham chiếu) một biến chưa được khai báo:

Thí dụ

Đặt Num = 1; thử {& nbsp; num.toprecision (500); & nbsp; & nbsp; // Một số không thể có 500 chữ số quan trọng} Catch (err) {& nbsp; document.getEuityById ("demo"). innerHtml = err.Name; }
  decodeURI("%%%");   // You cannot URI decode percent signs
}
catch(err) {
  document.getElementById("demo").innerHTML = err.name;
}

Hãy tự mình thử »


Lỗi tham chiếu

Một catch9 bị ném nếu bạn sử dụng (tham chiếu) một biến chưa được khai báo:

Đặt x = 5; thử {& nbsp; & nbsp; x = y + 1; & nbsp; & nbsp; // y không thể được sử dụng (tham chiếu)} Catch (err) {& nbsp; document.getEuityById ("demo"). innerHtml = err.Name; }
lineNumber (Mozilla)
columnNumber (Mozilla)
stack (Mozilla)
description (Microsoft)
number (Microsoft)

Lỗi cú pháp


Một finally0 được ném nếu bạn cố gắng đánh giá mã với lỗi cú pháp.

thử {& nbsp; eval ("alert ('hello)"); & nbsp; & nbsp; // thiếu 'sẽ tạo ra một lỗi} Catch (err) {& nbsp; & nbsp; document.getEuityById ("demo"). InnerHtml = err.name;}




Làm cách nào để sử dụng lỗi JavaScript?

JavaScript cung cấp cơ chế xử lý lỗi để nắm bắt lỗi thời gian chạy bằng cách sử dụng khối thử kết hợp, tương tự như các ngôn ngữ khác như Java hoặc C#.Hãy thử: Kết thúc mã đáng ngờ có thể gây ra lỗi trong Block.Catch: Viết mã để làm điều gì đó trong khối bắt khi xảy ra lỗi.try-catch-finally block, similar to other languages like Java or C#. try: wrap suspicious code that may throw an error in try block. catch: write code to do something in catch block when an error occurs.

Lỗi JavaScript là gì?

Có ba loại lỗi trong lập trình: (a) lỗi cú pháp, (b) lỗi thời gian chạy và (c) lỗi logic.Syntax Errors, (b) Runtime Errors, and (c) Logical Errors.

Làm thế nào để bạn trả về một lỗi trong javascript?

Trong Thuộc tính Thông báo lỗi JavaScript được sử dụng để đặt hoặc trả về thông báo lỗi.Giá trị trả về: Nó trả về một chuỗi, biểu thị các chi tiết của lỗi.error message property is used to set or return the error message. Return Value: It returns a string, representing the details of the error.