ให้เรตสมาชิก: 3 / 5

ดาวใช้งานดาวใช้งานดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

บทที่ 13 JavaScript Switch Statement


   Switch Statement คือเงื่อนไขแบบหนึ่งที่ใช้ในการเขียนโปรแกรม นิยมใช้ในกรณีที่เรามีเงื่อนไขที่ต้องตรวจสอบอยู่หลายเงื่อนไข ซึ่งมีลักษณะคล้ายกับ if...else  แต่ต่างกันที่ เงื่อนไขแบบ Switch นี้จะใช้การตรวจสอบเพียงครั้งเดียวแล้วไล่ดูว่าเข้ากับ case ไหน ก็จะทำตามคำสั่งใน case นั้นไป แต่ถ้าไม่ตรงกับ case ใดๆเลย ก็จะทำตามคำสั่งใน default  ส่วนเงื่อนไขแบบ IF...else นั้นจะมีการตรวจสอบไปที่ล่ะตัวเลือก ซึ่งหากมีหลายตัวเลือกก็จะต้องทำการเช็คหลายครั้ง ทำให้ไม่สะดวก


switch(สิ่งที่ต้องการตรวจสอบ)
{
case 1:
  คำสั่งที่  1
  break;
case 2:
  คำสั่งที่  2
  break;
default:
  กรณีที่ไม่ตรงกับคำสั่งใดๆเลย
}
 

 

จากรูปแบบของคำสั่งโปรแกรมจะตรวจสอบจากตัวแปรที่คำสั่ง Switch (ตัวแปรในวงเล็บ)ว่ามีค่าเป็นเท่าไรแล้วนำมาตรวจสอบกับคำสั่ง case ถ้าตรงกับค่าของ case ใดก็จะทำงานตาม คำสั่งใน case นั้น เมื่อทำงานเสร็จ จะพบคำสั่ง break มีผลทำให้ออกไปจากคำสั่ง switch ทันที ในกรณีที่ไม่มีค่าใดตรงกับ case ที่ระบุโปรแกรม จะมาทำงานที่คำสั่ง default โดยอัตโนมัติ
ตัวอย่างเช่น


switch(อาหารกลางวันที่ชอบ)
{
case 1:
  คำสั่งที่  พิชซ่า
  break;
case 2:
  คำสั่งที่  เกี๊ยวกุ้ง
  break;
default:
  ไม่ชอบเลยสักอย่าง อยากกินอย่างอื่น
}

code ตัวอย่าง

 
<body>
<p id="demo"></p>

<script>
var i=200;
switch (i) {
    case 100:
        score = "100";
        break;
    case 200:
        score = "200";
        break;
    case 300:
        score = "300";
        break;
    default:
        score="ไม่ตรงกับค่าไหนเลย";
}
document.getElementById("demo").innerHTML = "คะแนนของคุณ" + score+"แต้ม";
</script>
</body>

ผลลัพธ์


*** หมายเหตุ
  การใช้คำสั่ง break เป็นการสั่งให้โปรแกรมออกคำสั่ง switch หากเจอเงื่อนไขที่่ต้องการแล้ว มิฉะนั้นโปรแกรมจะยังตรวจสอบเงื่อนไขไปเรื่อยๆ เเม้ว่าจะพบเงื่่อนไขที่ต้องการเเล้วก็ตาม ส่วน defalt นั้นเราจะมีหรือไม่มีก็ได้ ขึ้นอยู่ที่เงื่อนไขที่เรามีนั้นครอบคลุมทุกค่าแล้วหรือไม่ เพราะค่า defalt นั้นจะถูกนำมาใช้ในกรณีทีไม่ตรงกับเงื่อนไขใดๆเลย

ข้อมูลอ้างอิง
http://www.buksohn.com
http://www.w3schools.com

หัวเรื่อง
javascript13
หมวดหมู่
Javascript, Javascript
ฮิต
14899
ผู้สร้างเอกสาร
วันที่สร้างเอกสาร
2016-06-03 13:33:34

javascript13.zip

ประเภทไฟล์ zip

ขนาดไฟล์ 629 bytes

ผู้อัพโหลดไฟล์

วันที่อัพโหลด 2016-06-03 06:32:45


กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
การใช้ text-align เพื่อจัดข้อความ
โดย bankjittapol ศ 22 พ.ย. 2019 6:28 pm บอร์ด CSS Knowledge
0
3
ศ 22 พ.ย. 2019 6:28 pm โดย bankjittapol
อยากทราบคำสั่ง joomla ที่จะทำให้ย่อยรูปได้ครับ
โดย jamepiyawat ศ 22 พ.ย. 2019 5:53 pm บอร์ด Joomla Development
0
5
ศ 22 พ.ย. 2019 5:53 pm โดย jamepiyawat
วิธีการการใช้งาน jquery เพื่อปรับเปลี่ยนค่า css ให้กับปุ่มเมื่อมีการคลิก
โดย Ittichai_chupol ศ 22 พ.ย. 2019 5:41 pm บอร์ด Jquery & Ajax Knowledge
0
3
ศ 22 พ.ย. 2019 5:41 pm โดย Ittichai_chupol
การใส่ Intro Outro และการตัดต่อ VDO ด้วยโปรแกรม โปรแกรม Sony Vagas Pro
โดย numtan5839 ศ 15 พ.ย. 2019 1:41 pm บอร์ด Graphic design
0
6
ศ 15 พ.ย. 2019 1:41 pm โดย numtan5839
ข้อดีข้อเสียของ SAP
โดย kanchanok พฤ 05 เม.ย. 2018 9:31 am บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
1
2220
ศ 22 พ.ย. 2019 4:57 pm โดย mindphp
วิธีการเปลี่ยนการแสดงผล ส่วนการจัดการกระทู้ที่ติดตาม ของ phpbb
โดย Ittichai_chupol ศ 22 พ.ย. 2019 4:07 pm บอร์ด PHP Knowledge
0
5
ศ 22 พ.ย. 2019 4:07 pm โดย Ittichai_chupol
.net ถ้าจะใช้ Entity Framework โดยไม่ต้องลงตัว Oracle Data Access Client (ODAC)
โดย jataz2 ศ 22 พ.ย. 2019 3:23 pm บอร์ด Programming - C/C++ & java & Python
0
9
ศ 22 พ.ย. 2019 3:23 pm โดย jataz2
โปรแกรมหาค่าเฉลี่ย, ค่าแปรปรวน และค่าเบี่ยงเบนมาตรฐาน
โดย prmindphp ศ 22 พ.ย. 2019 10:40 am บอร์ด MindPHP News / Feedback
0
17
ศ 22 พ.ย. 2019 10:40 am โดย prmindphp
โปรแกรมคำนวณสแควรูท - โปรแกรมช่วยหาค่า รากที่ สอง สาม สี่... ของจำนวนที่ต้องการ
โดย prmindphp ศ 22 พ.ย. 2019 10:23 am บอร์ด MindPHP News / Feedback
0
37
ศ 22 พ.ย. 2019 10:23 am โดย prmindphp
พาสปอร์ตด่วนพิเศษ บินไวไฟลุก จ่าย 3,000.- รับเล่มภายในไม่กี่ชั่วโมง
โดย promotion ศ 22 พ.ย. 2019 10:19 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
8
ศ 22 พ.ย. 2019 10:19 am โดย promotion
งานประจำวันที่ 22 พฤศจิกายน 2562
โดย numtan5839 ศ 22 พ.ย. 2019 9:36 am บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
6
24
ศ 22 พ.ย. 2019 6:58 pm โดย numtan5839
บันทึกการประชุม OpenERP MD-ERP
โดย rinrada ส 04 ก.พ. 2017 11:52 am บอร์ด OpenERP - MD-ERP (Main)
26
173
พฤ 21 พ.ย. 2019 6:56 pm โดย thatsawan
การใช้ ฟังก์ชัน hsl() และ hsal () กำหนดค่าของสี
โดย bankjittapol พฤ 21 พ.ย. 2019 6:55 pm บอร์ด CSS Knowledge
0
24
พฤ 21 พ.ย. 2019 6:55 pm โดย bankjittapol
วิธีการแยกตัวอักษรเข้าอาร์เรย์ (Array) แต่ล่ะอาร์เรย์ ด้วยคำสั่ง split
โดย jamepiyawat พฤ 21 พ.ย. 2019 6:50 pm บอร์ด Jquery & Ajax Knowledge
0
20
พฤ 21 พ.ย. 2019 6:50 pm โดย jamepiyawat
วิธีการดึงค่าเฉพาะค่าสุดท้ายของ class แม้ว่าจะมี class ชื่อเหมือนกัน หลายคลาส โดย javascript
โดย Ittichai_chupol พฤ 21 พ.ย. 2019 6:39 pm บอร์ด Jquery & Ajax Knowledge
0
27
พฤ 21 พ.ย. 2019 6:39 pm โดย Ittichai_chupol
การติดตั้ง wkhtmltopdf ด้วย terminal บน ubuntu
โดย jirawoot พฤ 27 มิ.ย. 2019 4:00 pm บอร์ด Linux - Web Server
3
719
พฤ 21 พ.ย. 2019 2:49 pm โดย mindphp
การปรับแก้ไข(Overrides) Modules ใน Template
โดย bankjittapol พฤ 21 พ.ย. 2019 2:36 pm บอร์ด Joomla Developing Knowledge
0
19
พฤ 21 พ.ย. 2019 2:36 pm โดย bankjittapol
wkhmtltopdf คืออะไร
โดย jirawoot พ 03 ก.ค. 2019 6:35 pm บอร์ด Share Knowledge
1
229
พฤ 21 พ.ย. 2019 2:34 pm โดย mindphp
อัพเกรด wkhtmltopdf บน Ubuntu 16.04
โดย mindphp พฤ 21 พ.ย. 2019 2:33 pm บอร์ด Linux - Web Server
0
18
พฤ 21 พ.ย. 2019 2:33 pm โดย mindphp
VDO - โปรแกรมแปลงพื้นที่
โดย numtan5839 พฤ 21 พ.ย. 2019 1:59 pm บอร์ด M097 - ตรีเนตร บูรณโพธิ์ทอง
4
29
ศ 22 พ.ย. 2019 6:40 pm โดย numtan5839