Menu
CoddyTech

Vòng lặp lồng nhau với mảng 2 chiều

Thuộc phần Logic và luồng chương trình trong hành trình JavaScript của Coddy. Bài học 8 trên 65.

Khi làm việc với mảng 2D, chúng ta thường dùng các vòng lặp lồng nhau để duyệt từng hàng và từng cột, nhờ đó có thể truy cập hoặc sửa đổi mọi phần tử trong mảng.

Đây là cấu trúc thường gặp của các vòng lặp lồng nhau khi làm việc với mảng hai chiều:

const seats = [
  [true, true, false],
  [true, false, true]
];

for (let r = 0; r < seats.length; r++) {
  // Vòng lặp ngoài duyệt qua các hàng
  for (let c = 0; c < seats[r].length; c++) {
    // Vòng lặp trong duyệt qua các cột
    // Bạn có thể truy cập seats[r][c] tại đây
  }
}

Vòng lặp ngoài duyệt qua các hàng, còn vòng lặp trong duyệt qua các cột của từng hàng. Nhờ vậy, bạn có thể truy cập từng phần tử trong mảng hai chiều bằng cách dùng array[r][c].

challenge icon

Thử thách

Dễ

Tạo một hàm có tên countOccurrences, nhận vào một mảng hai chiều gồm các chuỗi matrix và một chuỗi target. Hàm này sẽ trả về số lần target xuất hiện trong tất cả các hàng và cột.

Tự làm thử

function countOccurrences(matrix, target) {
  // TODO: Viết logic đếm số lần 'target' xuất hiện trong matrix
}
// Không viết gì bên ngoài hàm (function)
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Logic và luồng chương trình

Tự luyện tập: Trình biên dịch JavaScript online