บทนำ
ลูป while ใช้เพื่อทำงานซ้ำบล็อกโค้ดหรือคำสั่งไปเรื่อยๆตราบใดที่เงื่อนไขยังคงเป็น true เมื่อเงื่อนไขกลายเป็น false ลูปจะสิ้นสุดการทำงาน
ตัวอย่างการใช้งาน Nested While Loop
ตัวอย่างต่อไปนี้แสดงการใช้ลูป while ซ้อนกันเพื่อพิมพ์สัญลักษณ์ # เป็นตารางขนาด 2 แถว 8 คอลัมน์
<html>
<body>
<script>
var height = 2;
var width = 8;
var col = 0;
var row = 0;
document.write("Starting Loop<br> ");
while (row < height) {
col = 0;
while(col < width) {
document.write("#");
col++;
}
document.write("<br>");
row++;
}
document.write("Loop stopped!");
</script>
</body>
</html>
คำอธิบายโค้ด
- ลูปภายนอก (Outer loop): ควบคุมจำนวนแถว (
row) ทำงานซ้ำจนกว่าrowจะเท่ากับheight - ลูปภายใน (Inner loop): ควบคุมจำนวนคอลัมน์ (
col) ในแต่ละแถว ทำงานซ้ำจนกว่าcolจะเท่ากับwidth col = 0;ต้องวางอยู่ภายในลูปภายนอกเพื่อรีเซ็ตค่าคอลัมน์ทุกครั้งที่เริ่มแถวใหม่document.write("<br>");ใช้ขึ้นบรรทัดใหม่หลังจบแต่ละแถว
ผลลัพธ์ที่ได้
Starting Loop ######## ######## Loop stopped!
ข้อควรระวัง
การใช้ลูปซ้อนกันต้องระวังเงื่อนไขการออกจากลูปให้ถูกต้อง มิฉะนั้นอาจเกิด Infinite Loop (ลูปไม่รู้จบ) ได้ ต้องแน่ใจว่าตัวแปรนับ (row, col) ถูกเพิ่มค่าอย่างถูกต้องในแต่ละรอบ