คำสั่งควบคุมการทำงาน

        คำสั่งที่ใช้ในการควบคุมการทำงานของโปรแกรม ประกอบด้วยกลุ่มคำสั่ง 2 กลุ่ม คือ

  1. คำสั่งในการตัดสินใจ (Selection)
  2. คำสั่งในการวนรอบ (Iteration)

1. คำสั่งในการตัดสินใจ (Selection)

        เป็นกลุ่มคำสั่งที่ใช้สำหรับการตัดสินใจเพื่อเลือกเงื่อนไขต่าง ๆ ภายในโปรแกรม เพียงเงื่อนไขเดียวมาทำงาน ได้แก่ คำสั่ง if และ switch ซึ่งชุดคำสั่งแบบนี้ในจาวาสคริปต์จะมีอยู่ 4 ลักษณะดังนี้

          1.1 คำสั่ง if

          if เป็นการกำหนดให้โปรแกรมทำงานเมื่อเงื่อนไขที่ระบุหลัง if เป็นจริง โดยมีรูปแบบของประโยค ดังนี้

รูปแบบ

ตัวอย่าง

if(condition){ <script language="JavaScript">
   เมื่อเงื่อนไขเป็นจริงจะทำงานใน Block นี้     a=1;
}     if(a==1) {
          alert("a มีค่าเท่ากับ 1");}
  </script>

          1.2 คำสั่ง if...else

          if..else เป็นการกำหนดเงื่อนไขเพิ่มขึ้นมาจาก if โดยมีความหมายคือ ถ้ามีเงื่อนไขหลัง if ไม่เป็นจริง โปรแกรมจะทำงานมาที่ else แทน ซึ่งมีรูปแบบคำสั่ง ดังนี้

รูปแบบ

ตัวอย่าง

if(condition){ <script language="JavaScript">
   เมื่อเงื่อนไขเป็นจริงจะทำงานใน Block นี้     a=2;
} else {     if(a==1) {
   เมื่อเงื่อนไขหลัง if ไม่เป็นความจริง         alert("a มีค่าเท่ากับ 1"); }
   โปรแกรมจะมาทำตามคำสั่งใน Block นี้    else {
}         alert("a มีค่าไม่เท่ากับ 1"); }
  </script>

          1.3 คำสั่ง if...else if...else

          if..else  if..else เป็นการกำหนดเงื่อนไขที่ซ้อนขึ้นมาจาก if โดยมีความหมาย คือ ถ้าเงื่อนไข if ไม่เป็นความจริง โปรแกรมจะทำการตรวจสอบเงื่อนไขหลัง else if ต่อไป ถ้าหากว่าเงื่อนไขไม่ตรงกับทั้ง if และ else if โปรแกรมจะเข้ามาทำงานใน block ของ else ที่กำหนดไว้ มีรูปแบบของประโยคคำสั่ง ดังนี้

รูปแบบ

ตัวอย่าง

if (condition) { <script language="JavaScript">
เมื่อเงื่อนไขเป็นจริงทำงานใน Block นี้     a=2;
} else if(เงื่อนไข) {     if(a==1){
ถ้าเงื่อนไขหลัง else if เป็นความจริงจะทำงานใน Block นี้     alert{"a มีค่าเท่ากับ 1"); }
} else {    else if(a==2) {
เมื่อเงื่อนไขหลัง if และ else if ไม่เป็นความจริง     alert{"a มีค่าเท่ากับ 2"); }
โปรแกรมจะมาทำตามคำสั่งใน Block นี้    else {
}     alert{"a มีค่าไม่เท่ากับ 1"); }
  </script>

          1.4 คำสั่ง switch

         switch เป็นคำสั่งที่คล้าย ๆ กับ if..else if ..else คือ ถ้าเงื่อนไดเป็นจริงที่เงื่อนไขใด ก็จะทำตามคำสั่งหลังเงื่อนไขนี้ มีรูปแบบของประโยคคำสั่ง ดังนี้

รูปแบบ

ตัวอย่าง

switch (สิ่งที่ต้องการเปรียบเทียบ) { <script language="JavaScript">
   case สิ่งที่นำมาเปรียบเทียบ : การทำงาน    a=2;
         เมื่อการเปรียบเทียบเป็นความจริง    switch (a)
    break; {
   default : เมื่อไม่มีเงื่อนไขใดเลยเป็นจริงเลย    case 1 : alert("a มีค่าเท่ากับ 1"); break;
         ให้ทำตามคำสั่งนี้    case 2 : alert("a มีค่าเท่ากับ 2"); break;
     case 3 : alert("a มีค่าเท่ากับ 3"); break;
  default : alert("a มีค่ามากกว่า 3 หรือน้อยว่า 1");
  }
  </script>

2. คำสั่งในการวนรอบ (Iteration)

    เป็นคำสั่งที่มีการทำงานซ้ำกันหลาย ๆ ครั้ง จนกว่าจะครบตามเงื่อนไขที่กำหนด การทำงานแบบวนรอบจะช่วยลดจำนวนโค้ดคำสั่งที่ต้องเขียนซ้ำ ๆ ช่วยให้โปรแกรมสั้นและประมวลผลได้เร็วขึ้น ซึ่งชุดคำสั่งแบบนี้ในจาวาสคริปต์มีอยู่ 3 ลักษณะ ดังนี้

          2.1 การวนรอบในรูปแบบ for

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

รูปแบบ

ตัวอย่าง

for(ตัวแปร= ค่าเริ่มต้น;เงื่อนไข; การเปลี่ยนของค่าเริ่มต้น) { <script language="JavaScript">
เมื่อเงื่อนไขเป็นจริงจะทำงานใน Block นี้   for(i=1;i<=5;++i) {
}    document.write("การวนรอบที่"+i+ "<br>"); }
  </script>

       จากตัวอย่าง เป็นการวนรอบจำนวน 5 รอบ โดยเราทำการกำหนดค่าเริ่มต้นไว้ที่เลข 1 และให้ตัวแปร i มารับค่าเริ่มต้นนี้ไว้ จากนั้นเป็นเงื่อนไข ในที่นี้เรากำหนดเงื่อนไขว่า หากค่าของ i ยังมีค่าน้อยกว่าหรือเท่ากับ 5 ให้โปรแกรมนี้ทำการวนรอบต่อไป แต่หากค่าของ i มากกว่า 5 ก็จะหยุดการวนรอบนี้ สำหรับการเปลี่ยนแปลงค่าเริ่มต้น เรากำหนดให้ทุกครั้งที่มีการวนรอบค่าของ i จะเพิ่มขึ้นทีละ 1 ผลจากการทำงานของโปรแกรมตัวอย่างจะแสดงค่าออกมาดังนี้

ภาพที่ 2.8  ผลการทำงานของโปรแกรมตัวอย่างการวนรอบแบบ for

          2.2 การวนรอบในรูปแบบ while

         การวนรอบในรูปแบบของ while นี้เป็นการวนรอบโดยที่เรากำหนดเงื่อนไขในการวนรอบลงไป หากเงื่อนไขที่กำหนดไว้ยังมีค่าเป็นจริง (True) อยู่การวนรอบนั้นจะดำเนินต่อไป ดังตัวอย่างต่อไปนี้

รูปแบบ

ตัวอย่าง

while(เงื่อนไข) { <script language="JavaScript">
 เมื่อเงื่อนไขเป็นจริงจะทำงานใน Block นี้    i=1;
}    while(i<=5) {
     document.write("การวนรอบที่" +i+ "<br>");
     ++i;
  }
  </script>

      จากตัวอย่าง เป็นการวนรอบจำนวน 5 รอบและจะมีการทำงานรูปแบบเงื่อนไขต่าง ๆ เช่นเดียวกับรูปแบบของ for ดังภาพ

ภาพที่ 2.9  ผลการทำงานของโปรแกรมตัวอย่างการวนรอบแบบ while

          2.3 การวนรอบในรูปแบบ do...while

        การวนรอบในรูปแบบของ do..while มีการทำงานที่คล้ายกับประโยค while แต่จะแตกต่างกันตรงที่ do..while จะมีการทำงานใน Block คำสั่ง 1 ครั้ง ก่อนตรวจสอบเงื่อนไขเพื่อทำการวนรอบดังตัวอย่างต่อไปนี้

รูปแบบ

ตัวอย่าง

do { <script language="JavaScript">
โปรแกรมทำงานใน Block 1 ครั้ง     i=1;
และจะทำงานต่อไปเมื่อเงื่อนไขเป็นจริง    do{
} while (เงื่อนไข)    document.write("การวนรอบ do...while" ค่า i เท่ากับ "+i);
      ++i;
   } while (i>2);
  </script>

        จากตัวอย่าง เป็นการวนรอบที่มีเงื่อนไขที่เป็นเท็จตั้งแต่ต้น คือ ในตัวอย่างกำหนดเงื่อนไขไว้ว่า หาก i มากกว่า 2 ให้ทำงานในการวนรอบ แต่ค่าเริ่มต้นที่กำหนดให้ i คือ 1 ฉะนั้น ค่า i จึงน้อยกว่า 2 และทำให้เงื่อนไขเป็นเท็จและไม่เกิดการวนรอบแต่โปรแกรมก็ยังทำงานใน Block คำสั่งของ do...while 1 ครั้ง ผลที่ได้คือ

ภาพที่ 2.10  ผลการทำงานของโปรแกรมตัวอย่างการวนรอบแบบ do..while

ตัวอย่าง

        1. โปรแกรมทำงานแบบลำดับ (sequence.html)


        2. โปรแกรมแบบทางเลือก (Condition.html)


        3. โปรแกรมแบบทำซ้ำ (loop.html)