2013-09-04 54 views
5

Tôi mới làm quen với javascript. Đôi khi lỗi xuất hiện trong chương trình nhưng sau khi xem xét quá nhiều lần, lỗi vẫn chưa được giải quyết.Những sai lầm quá nhỏ để có được trong sight .so để tránh xa điều này, tôi sẽ sử dụng sự kiện onError hoặc khối try try. Đây sẽ là thực hành tốt để làm điều này.Tôi nên sử dụng khối try và catch hoặc sự kiện onerror

Hoặc là có một cách khác để tìm ra nhầm lẫn hoặc sai sót trong chương trình trong thời gian ít hơn ..

xin vui lòng cho tôi biết ..

+0

Tôi giả sử bạn đã [jslint-ed] (http://www.jslint.com/) javascript của bạn? – rene

+0

Tùy thuộc vào loại lỗi, bạn có thể hiển thị các phần có liên quan của mã không? – bfavaretto

+0

Cá nhân tôi thích thử - nắm bắt –

Trả lời

3

Không nhất thiết phải nói là tốt hơn loại kia. Đối với trường hợp của bạn, tôi cảm thấy rằng onerror rất dễ dàng và phù hợp vì nó cho phép bạn cảnh báo thông báo lỗi được JavaScript báo cáo mà không cần phải viết lại mã của bạn trong các khối try/catch.

Mã trình diễn với trình xử lý onerror trong tập lệnh khép kín được thêm vào phần còn lại của mã của trang, cùng với lỗi cú pháp mẫu kích hoạt lời nhắc hiển thị thông báo lỗi JavaScript.

<script> 
onerror = function(m) { 
    return confirm(
     'Scripts on this page generated an error message: ' + 
     m + 
     '\n\nDo you wish to continue running the scripts?'); 
} 
</script> 

<script> 
alert(' hello'; 
</script> 

Mã xấu ở trên tạo ra thông báo cảnh báo 'mã thông báo không mong muốn;' vì thiếu dấu ngoặc đơn.

2

Bạn bạn bè là:

  • Chrome Công cụ nhà phát triển: Tất cả các loại công cụ được đóng gói cùng nhau.

    • Công cụ nhà phát triển mở bởi F12, Ctrl + Shift + I trên Windows hoặc Cmd + Opt + I trên Mac
  • console.log: debug khi chạy.

  • jshint: kiểm tra cú pháp/biến sai chính tả/mã không sử dụng/biến không sử dụng/... trước khi chạy.

try/catch là cách tiếp cận rất nguy hiểm trừ khi bạn thực hiện một số thao tác ghi bên trong vì nó sẽ ẩn tất cả các lỗi, không sửa chúng. Bên cạnh đó, nó sẽ làm cho mã của bạn chạy chậm.

+0

bất cứ khi nào tôi sử dụng console.log trong mã của tôi nó không làm trên trình duyệt bất kỳ điều.so trong nơi mà tôi sử dụng alert(); – user2502227

+0

sử dụng có thể xem nhật ký của bạn trên tab Bảng điều khiển trong công cụ nhà phát triển – Joon

+0

Nếu bạn đang sử dụng chrome (bạn nên kiểm tra mã của mình), Mở Công cụ nhà phát triển \t bằng F12, Ctrl + Shift + I trên Windows hoặc Cmd + Opt + I Mac. – Joon