Cấu trúc
Vòng lặp while bên trong vòng lặp while khác. Outer loop kiểm soát hàng, inner loop kiểm soát cột (ví dụ in hình).
Ví dụ: In hình chữ nhật #
<script>
var height = 2;
var width = 8;
var row = 0;
document.write("Bat dau<br>");
while (row < height) {
var col = 0;
while (col < width) {
document.write("#");
col++;
}
document.write("<br>"); // xuống dòng sau mỗi hàng
row++;
}
document.write("Dung!<br>");
</script>
Kết quả
######## ########
Lưu ý
- Phải reset biến inner (
col = 0) ở đầu outer loop. - Cẩn thận vô tận: đảm bảo cả 2 điều kiện đều tiến tới false.
- Dùng
break/continuevới label nếu cần thoát/bỏ qua outer từ inner.
So sánh nested for vs while
| for | while |
|---|---|
| Khởi tạo/check/iter gọn 1 dòng | Tách riêng, linh hoạt hơn |
| Phổ biến cho nested loop đếm | Phù hợp điều kiện phức tạp |