Trong lập trình JavaScript, chúng ta đã quen với việc tạo và làm việc với mảng một chiều. Là những mảng chứa các phần tử (các phần tử có kiểu dữ liệu giống nhau hoặc nhiều kiểu dữ liệu) Show
Nhưng thật tốt khi biết rằng mảng hai chiều (mảng 2D) tồn tại trong JS Trong bài viết này, bạn sẽ tìm hiểu mảng hai chiều là gì và cách chúng hoạt động trong JavaScript. Nó khá khác biệt so với các ngôn ngữ lập trình khác bởi vì, về mặt kỹ thuật, không có mảng hai chiều trong JavaScript Mảng hai chiều là gì?Mảng hai chiều, còn được gọi là mảng 2D, là tập hợp các phần tử dữ liệu được sắp xếp theo cấu trúc giống như lưới với các hàng và cột. Mỗi phần tử trong mảng được gọi là một ô và có thể được truy cập bằng các chỉ số/chỉ số hàng và cột của nó
Trong JavaScript, không có cú pháp trực tiếp để tạo mảng 2D như với các ngôn ngữ lập trình thường được sử dụng khác như C, C++ và Java Bạn có thể tạo mảng hai chiều trong JavaScript thông qua mảng răng cưa — mảng của mảng. Ví dụ, bên dưới là hình dạng của một mảng lởm chởm
Nhưng có một hạn chế. Điều quan trọng cần lưu ý là mảng hai chiều có kích thước cố định. Điều này có nghĩa là khi chúng được tạo, số lượng hàng và cột sẽ được cố định. Ngoài ra, mỗi hàng phải có số phần tử (cột) tương tự nhau Ví dụ, mảng dưới đây có ba hàng và bốn phần tử
Hạn chế là với mảng răng cưa, bạn không thể chỉ định hàng và cột cố định. Điều này có nghĩa là một mảng răng cưa có thể có m hàng, mỗi hàng có số lượng phần tử khác nhau
Tại sao nên sử dụng Mảng 2D trong JavaScript?Tại thời điểm này, bạn có thể tự hỏi về tầm quan trọng của mảng 2D, đặc biệt nếu đây là lần đầu tiên bạn đọc về mảng 2D Trong JavaScript, chúng tôi sử dụng mảng hai chiều, còn được gọi là ma trận, để lưu trữ và thao tác dữ liệu theo cách có cấu trúc và tổ chức
Cách truy cập các phần tử trong mảng JavaScript 2DTrước khi bạn tìm hiểu cách tạo mảng 2D trong JavaScript, trước tiên hãy tìm hiểu cách truy cập các phần tử trong mảng 2D Bạn có thể truy cập các phần tử của mảng hai chiều bằng hai chỉ số, một cho hàng và một cho cột. Giả sử bạn có mảng hai chiều sau
Trên đây là một mảng răng cưa, trong đó mỗi phần tử chứa tên, điểm kiểm tra, điểm thi và lớp của học sinh. Bạn có thể truy cập các phần tử cụ thể bằng cách sử dụng chỉ mục hàng và cột như trong cú pháp bên dưới
Để hiểu rõ hơn về điều này, hãy chuyển đổi mảng hai chiều ở trên thành một bảng bằng cách sử dụng 4
Bạn sẽ nhận được kết quả như thế này, hiển thị chỉ số hàng và cột. Hãy nhớ rằng các mảng không được lập chỉ mục, nghĩa là các mục được tham chiếu từ 0, không phải 1 Xin lưu ý rằng cột và hàng 7 là minh họa cho biết các chỉ số/chỉ số của mảng bên trongBạn sử dụng hai dấu ngoặc vuông để truy cập một phần tử của mảng hai chiều hoặc nhiều chiều. Cái đầu tiên truy cập các hàng, trong khi cái thứ hai truy cập phần tử trong hàng đã chỉ định
Cách truy cập các phần tử đầu tiên và cuối cùng của mảng 2DĐôi khi bạn có thể cần tìm phần tử đầu tiên và phần tử cuối cùng của mảng hai chiều. Bạn có thể thực hiện việc này bằng cách sử dụng chỉ mục đầu tiên và chỉ mục cuối cùng của cả hàng và cột Phần tử đầu tiên sẽ luôn có chỉ số hàng và cột bằng 0, nghĩa là bạn sẽ sử dụng 8Tuy nhiên, chỉ mục của phần tử cuối cùng có thể phức tạp. Ví dụ: trong ví dụ trên, phần tử đầu tiên là 'John Doe' trong khi phần tử cuối cùng là 'B'
Cách thêm tất cả các phần tử của mảng 2DTrong một số trường hợp, tất cả các phần tử của mảng 2D của bạn có thể là số, vì vậy bạn có thể cần phải cộng chúng lại với nhau và chỉ có một chữ số. Bạn có thể làm điều này bằng cách sử dụng một vòng lặp lồng nhau. Trước tiên, bạn sẽ lặp qua các hàng, sau đó, đối với mỗi hàng, bạn lặp qua các phần tử của nó
Cách thao tác mảng 2D trong JavaScriptBạn có thể thao tác với mảng 2D giống như mảng một chiều bằng cách sử dụng các phương thức mảng chung như pop, push, splice, v.v. Hãy bắt đầu bằng cách tìm hiểu cách thêm/chèn một hàng và phần tử mới vào mảng 2D Cách chèn một phần tử vào mảng 2DBạn có thể thêm một phần tử hoặc nhiều phần tử vào mảng 2D bằng các phương thức push() và unshift() Phương thức push() thêm (các) phần tử vào cuối mảng 2D, trong khi phương thức unshift() thêm (các) phần tử vào đầu mảng 2D
Khi bạn 9 hoặc 0 mảng, bạn sẽ thấy rằng các hàng mới đã được thêm vào 0Bạn cũng có thể thêm các phần tử vào mảng bên trong, nhưng thật sai lầm khi chỉ đẩy vào một mảng bên trong mà không ảnh hưởng đến tất cả các phần tử của mảng. Điều này là do mảng hai chiều có nghĩa là có cùng số phần tử trong mỗi mảng phần tử 1Thay vì ảnh hưởng đến một phần tử mảng, bạn có thể thêm các phần tử vào tất cả các mảng phần tử cùng một lúc 2Điều này sẽ trở lại 3Bạn cũng có thể sử dụng phương thức 1 để chèn phần tử vào đầu và phương thức 2 để chèn vào giữa mảng 4Ở trên, 3 là vị trí mà bạn muốn mảng mới được chèn vào (hãy nhớ rằng nó không được lập chỉ mục), 4 được sử dụng để nó không loại bỏ phần tử nào, và sau đó tham số thứ ba là mảng được thêm vàoĐây là đầu ra 5Cách xóa phần tử khỏi mảng 2DBạn cũng có thể xóa (các) phần tử khỏi đầu và cuối của mảng 2D bằng các phương thức 5 và 6. Điều này tương tự như cách thức hoạt động của phương thức 7 và 1, nhưng bạn không thêm bất kỳ tham số nào vào phương thức lần này 6Khi bạn 9 hoặc 0 mảng, bạn sẽ thấy rằng các phần tử mảng đầu tiên và cuối cùng đã bị xóa 7Bạn cũng có thể xóa các phần tử khỏi từng phần tử mảng 8Điều này sẽ trở lại 9Bạn cũng có thể sử dụng phương thức 6 để xóa phần tử ở đầu và phương thức 2 để xóa phần tử mảng khỏi các vị trí cụ thể 0Trong đoạn mã trên, bạn xóa một mục khỏi chỉ mục vị trí 3 của mảng 2D 6. Điều này sẽ xuất ra 1Ghi chú. Tất cả các phương thức mảng JavaScript sẽ hoạt động trên một mảng 2D vì nó là một mảng của các mảng. Bạn chỉ cần lưu ý khi điều chỉnh các phần tử riêng lẻ trong mảng phần tử. Bạn thực hiện thay đổi tương tự trên tất cả các phần tử bằng cách lặp qua, mặc dù mảng 2D trong JavaScript không nghiêm ngặt Cách tạo mảng 2D trong JavaScriptCó hai tùy chọn để tạo một mảng nhiều chiều. Bạn có thể tạo mảng theo cách thủ công với ký hiệu ký tự mảng, ký hiệu này sử dụng dấu ngoặc vuông 5 để ngắt danh sách các phần tử được phân tách bằng dấu phẩy. Bạn cũng có thể sử dụng vòng lặp lồng nhauCách tạo một mảng 2D bằng cách sử dụng một mảng chữĐiều này giống như các ví dụ mà chúng tôi đã xem xét bằng cách sử dụng cú pháp sau 2Ví dụ, bên dưới là một mảng 2D chứa thông tin về điểm và điểm môn toán của từng học sinh 3Cách tạo mảng 2D bằng vòng lặp for lồng nhauCó nhiều cách tiếp cận để làm điều này. Nhưng nhìn chung, bạn tạo một vòng lặp lồng nhau trong đó vòng lặp đầu tiên sẽ lặp qua các hàng trong khi vòng lặp thứ hai sẽ lặp qua các phần tử trong mảng (cột) bên trong 4Trong đoạn mã trên, trước tiên bạn sẽ lặp qua các hàng. Đối với mỗi hàng, nó sẽ tạo một mảng trống bên trong mảng ban đầu được khai báo và lưu trữ trong biến 6. Sau đó, bạn sẽ tạo một vòng lặp lồng nhau để lặp qua các cột và thêm các phần tử riêng lẻTrong ví dụ này, chỉ mục cho 7 được sử dụng và sẽ xuất ra 5Bạn có thể quyết định tạo một số, khởi tạo bằng 0, sau đó tăng lên khi bạn lặp lại để bạn không có cùng một số cho tất cả các phần tử 6Điều này sẽ trở lại 7Bạn cũng có thể quyết định tạo một hàm chấp nhận các giá trị này làm đối số 8Cách cập nhật các phần tử trong mảng 2D trong JavaScriptĐiều này rất giống với cách bạn thực hiện với mảng một chiều, nơi bạn có thể cập nhật giá trị của mảng bằng cách sử dụng chỉ mục để gán giá trị khác 9Bạn có thể sử dụng phương pháp tương tự để thay đổi toàn bộ hàng hoặc thậm chí các phần tử riêng lẻ 0Điều này sẽ thay thế giá trị của chỉ mục 3 bằng mảng mới này 1Bạn có thể cập nhật các phần tử riêng lẻ bằng cách theo dõi các chỉ số hàng và cột và cập nhật giá trị của chúng 2Thao tác này sẽ thay đổi tên trên hàng có chỉ số 3 thành “Jack Jim”, như bên dưới 3kết thúcTrong bài viết này, bạn đã biết mảng hai chiều là gì và cách chúng hoạt động trong JavaScript Điều quan trọng cần biết là mảng 2D trong JavaScript vẫn hoạt động rất giống mảng một chiều, vì vậy hãy thoải mái tinh chỉnh và thao tác với chúng bằng các phương thức JavaScript Chúc các bạn code vui vẻ Bạn có thể truy cập hơn 150 bài báo của tôi bằng cách truy cập trang web của tôi. Bạn cũng có thể sử dụng trường tìm kiếm để xem tôi đã viết một bài báo cụ thể chưa QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO Nhà phát triển Frontend & Người viết kỹ thuật Nếu bạn đọc đến đây, hãy tweet cho tác giả để cho họ thấy bạn quan tâm. Tweet một lời cảm ơn Học cách viết mã miễn phí. Chương trình giảng dạy mã nguồn mở của freeCodeCamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu Độ dài của mảng 2 chiều trong JavaScript là bao nhiêu?Độ dài của mảng 2D là số hàng mà mảng có . Chỉ số hàng chạy từ 0 đến chiều dài-1. Mỗi hàng của mảng 2D có thể có số lượng ô khác nhau, vì vậy mỗi hàng có độ dài riêng. không đồng đều[0] đề cập đến hàng 0 của mảng, không đồng đều[1] đề cập đến hàng 1, v.v.
Làm cách nào để tìm mảng có độ dài mảng trong JavaScript?Cú pháp. let arr = []; . độ dài; Sử dụng cú pháp trên, chúng ta có thể tìm độ dài của một mảng, thậm chí chúng ta có thể đặt độ dài của mảng bằng cú pháp này.
Công thức tính kích thước của mảng 2D là gì?Kích thước của mảng hai chiều bằng nhân của số hàng và số cột có trong mảng .
Làm cách nào để truy cập mảng 2D trong JavaScript?let arr = []; . for (let i = 0; i < rows; i++) { arr[i] = []; for (let j = 0; j < columns; j++) { arr\[i\][j] = j; } } console. log(arr); Trong đoạn mã trên, trước tiên bạn sẽ lặp qua các hàng. |