PHP Ionic Angularjs Phonegap AJAX Javascript CSS MySQL jQuery Forum

ทบทวนคำสั่ง break และ continue ใน javascript

22 March 2010 By


คำสั่ง break;

ใช้สำหรับกำหนดให้หยุดการทำงานในคำสั่ง while หรือ for ลูป

<script type="text/javascript">
var i = 0;  // กำหนดค่า ตัวแปร i = 0
while(i < 6){ // ทำการวนลูป ขณะที่ i น้อยกว่า 6
	if(i == 3){	// เงื่อนไข กรณ๊ i =3
		break; // ให้หยุดหรือสิ้นสุดการทำงานต่างๆ ในคำสั่ง while
	}
	i++; // เพิ่มค่า i ครั้งละ 1 ทุกครั้งที่มีการวนลูป
	console.log(i); // แสดงผลค่า i กรณ๊ใช้กับ firebug ใน firefox เท่านั้น อาจใช้ alert(i); แทนได้
}
</script>


 
ผลลัพธ์ของ script ด้านบนคือ ค่า i จะค่อยๆเพิ่มค่า จากค่า 1 เป็น 2 และเป็น 3
และเมื่อค่า i = 3 จะเข้าเงื่อนไข คำสั่ง if(i==3) โปรแกรมจะไปทำงานที่คำสั่ง break
คือ ทำให้หยุดการทำงานทั้งหมดในคำสั่ง while ดังนั้น การเพิ่มค่าในกรณี ที่ค่า i >3
จึงหยุดการทำงานไป ค่า i ตัวสุดท้ายจึงเท่ากับ 3

คำสั่ง continue;

ทำงานตรงกันข้าม กับคำส่ัง break; โดยลักษณะ การทำงาน ขึ้นอยู่กับ เงื่อนไข ต่อไปนี้

กรณีใช้กับคำสั่ง while โปรแกรมจะไม่ทำงานคำสั่ง ที่อยู่ถัดจากคำสั่ง continue;
และจะกลับไปตรวจสอบเงื่อนไข ในคำสั่ง while

ตัวอย่าง
 

<script type="text/javascript">
var i = 0;  // กำหนดค่า ตัวแปร i = 0
while(i < 6){ // ทำการวนลูป ขณะที่ i น้อยกว่า 6
	i++; // เพิ่มค่า i ครั้งละ 1 ทุกครั้งที่มีการวนลูป
	if(i == 3){	// เงื่อนไข กรณ๊ i =3
		continue; // โปรแกรมจะวิ่งไปที่คำสั่ง while โดยจะไม่ทำงานคำสั่ง console.log(i); ที่จะอยู่ถัดไป
	}
	console.log(i); // แสดงผลค่า i กรณ๊ใช้กับ firebug ใน firefox เท่านั้น อาจใช้ alert(i); แทนได้
}
</script>  

ผลลัพธ์ของ script ด้านบน คือ ค่า i จะเท่ากับ 1, 2, 4, 5 และ 6 โดยจะไม่แสดงค่า i=3
ซึ่งเป็นไปตามเงื่อนไข เมื่อ ค่า i เท่ากับ 3 จะทำงานคำส่ัง continue ทำให้คำสั่ง console.log(i); ไม่ทำงานกรณีค่า i=3
จากนั้นโปรแกรมจะวิ่งไปทำงานที่คำสั่งตรวจสอบเงื่อนไขใน while  แล้วก็เข้ามาทำงาน ใน ลูป อีกครั้ง
และเมื่อค่า  i มากกว่า 3 คำสั่ง console.log(i); ก็จะทำงานตามปกติ


กรณีใช้กับคำสั่ง for โปรแกรมจะไม่ทำงานคำสั่ง ที่อยู่ถัดจากคำสั่ง continue;
และจะกลับไปที่เงื่อนไขการเพิ่ม หรือลดค่า แล้วเข้ามาทำงานในคำสั่ง for ต่อไป

ตัวอย่าง
 

<script type="text/javascript">
for(a=0;a<6;a++){  //  วนลูป โดยเริ่มต้นค่า a  เท่ากับ 0 และ a  น้อยกว่า 6
	if(a==3){ // เงื่อนไข กรณ๊ a =3
		continue; // โปรแกรมจะวิ่งไปที่คำสั่ง a++ โดยจะไม่ทำงานคำสั่ง console.log(a); ที่จะอยู่ถัดไป
	}
	console.log(a); // แสดงผลค่า a กรณ๊ใช้กับ firebug ใน firefox เท่านั้น อาจใช้ alert(a); แทนได้
}

</script>

ผลลัพธ์ของ script ด้านบน คือ ค่า a จะเท่ากับ 0, 1, 2, 4 และ 5 โดยจะไม่แสดงค่า a=3
ซึ่งเป็นไปตามเงื่อนไข เมื่อ ค่า a เท่ากับ 3 จะทำงานคำส่ัง continue ทำให้คำสั่ง console.log(a); ไม่ทำงานกรณีค่า a=3
จากนั้นโปรแกรมจะวิ่งไปทำงานที่คำสั่งเพิ่มหรือลด ค่า แล้วก็เข้ามาทำงาน ใน ลูป อีกครั้ง
เละเมื่อค่า  a มากกว่า 3 คำสั่ง console.log(a); ก็จะทำงานตามปกติ


Tags:: break javascript continue





URL สำหรับอ้างอิง