Error Handling ใน Java Script

| ไอที | JavaScript | 3137

Error Handling ใน Java Script

ในบทความนี้ผมจะสาธิตวิธีจัดการ Error ใน Java Script ได้อย่างไร

Java Script เป็นภาษา Script ที่ใช้สำหรับ client side นั่นก็คือ การที่สคลิปทำงานในฝั่ง client นั่นเอง

ซึ่ง Error ต่าง ๆ สามารถจัดการได้ใน 2 รูปแบบ นั่นคือ
try catch statement
onerror event

try catch statement

try..catch statement จะจัดการควบคุมข้อผิดพลาดใน statement ที่เป็น block หรือ { } ที่ครอบ statement ของเราเอาไว้ และจะทำการควบคุมข้อผิดพลาด ข้อควรจำข้อแรกเมื่อเรา เขียน try catch statement แล้วนั้น try catch จะต้องเป็นตัวอักษรเล็ก(lowercase)เท่านั้น ซึ่งถ้าเราเขียน try catch ที่เป็นตัวอักษรขนาดใหญ่(uppercase) โปรแกรมที่เราทำการรันไว้ จะแสดง error ออกมา ใน block ของ try นั้น เราจะใส่ code ที่ต้องการรัน หรือทดลองรัน และ ใน block ของ catch เราจะใส่ code ที่สามารถรันได้ แน่นอนเมื่อเกิดข้อผิดพลาดใน block ของ try เกิดขึ้น

เรามาดู Syntax กันดีกว่าตามโค้ดด้านล่างเลย

Syntax:

try 
{
  //Run some code here
}
catch(error){
  //Handle errors here
}

ดู Syntax กันแล้ว หลายคนคงยัง งง ๆ ไม่เข้าใจกันอยู่ งั้นเรามาดูตัวอย่างกันบ้างดีกว่า

ตัวอย่าง

<script type="text/javascript">
try
{
	y = getName();
	document.write(y);
}
catch(e){
	document.write("Error : " + e);
}
</script>
Output : Error : ReferenceError: getName is not defined

จากตัวอย่าง เราใส่ try catch แปรตรงตัว ก็คือ ซึ่ง try ถ้าแปรตรงตัว ก็คือลอง ให้ลอง ใส่ค่า y ด้วย ฟังก์ชัน getName(); ถ้าไม่เกิด Error ก็จะแสดงค่า y ออกมา แต่ถ้าเกิด Error ก็จะไปทำงานที่ catch ซึ่งก็คือการดักจับข้อผิดพลาด ในบล็อกนี้จะแสดงคำว่า Error แล้วตามด้วย error e เมื่อเราแสดงค่า e ออกมาดูจะได้คำว่า ReferenceError: getName is not defined ซึ่งก็คือ ไม่มีการอ้างอิง ฟังก์ชัน getName ไม่ได้กำหนดไว้ อธิบายง่าย ๆ ก็คือ หาฟังก์ชัน getName ไม่เจอ หรือไม่มีฟังค์ชันนี้นั่นเอง

comments