So sánh nhiều mảng JavaScript
Để so sánh hai Mảng trong JavaScript, bạn nên kiểm tra xem cả hai mảng có giống nhau không, các đối tượng được trình bày trong mảng đó có cùng loại không và mỗi mục trong một mảng có tương đương với đối tượng trong mảng được so sánh không Show Hướng dẫn này sẽ chỉ cho bạn một số cách so sánh hai mảng Một trong những phương pháp là chuyển đổi cả hai chuỗi thành chuỗi JSON và so sánh các chuỗi với nhau để xác định đẳng thức. Phương thức dùng để chuyển đổi mảng thành chuỗi Javascript JSON. phương pháp xâu chuỗihãy để firstArr = [1, 2, [3, 4, 5]]; . stringify(firstArr) === JSON. stringify(secondArr); . nhật ký (isEqual); Bạn cũng có thể gọi toString() để cắm một mảng số và chuỗi Phương thức Javascript toStringhãy để firstArr = [1, 2, 3, 4, 5]; . toString() === secondArr. toString(); . nhật ký (isEqual); Một cách khác của giải pháp trên là Array. nguyên mẫu. every() để so sánh từng phần tử của mảng với các phần tử của mảng khác Javascript so sánh hai phần tử mảnghãy để firstArr = [1, 2, 3, 4, 5]; . chiều dài === giâyArr. chiều dài && firstArr. every((value, index) => value === secondArr[index]); . nhật ký (isEqual); Mảng là các đối tượng giống như danh sách và các phần tử của chúng là các thuộc tính có tên 0, 1, 2. vân vân. Chúng có những tính chất đặc biệt. chiều dài và nhiều hàm thao tác với các phần tử. Độ dài cũng như kiểu của các phần tử đều không cố định Các mảng được lập chỉ mục bằng 0, nghĩa là phần tử đầu tiên ở chỉ mục 0 và chỉ mục của phần tử cuối cùng tương đương với giá trị của thuộc tính độ dài trừ đi 1 Tuy nhiên, chúng ta không thể sử dụng toán tử đẳng thức để so sánh các mảng. Lý do đằng sau điều này là mảng JavaScript là một loại đối tượng và các đối tượng được so sánh dựa trên các tham chiếu của các biến chứ không phải trên các giá trị const mảng1 = [1, 2, 3]; Trong đoạn mã trên, chúng tôi đã khởi tạo hai mảng giống nhau. Tuy nhiên, trong đầu ra, chúng ta sẽ thấy sai Do đó để giải quyết vấn đề này, trong bài đăng này, chúng ta sẽ tìm hiểu một số cách để so sánh hai mảng trong JavaScript Phương pháp 1. toString()Phương thức toString() là một phương thức có sẵn của JavaScript giúp chuyển đổi bất kỳ loại dữ liệu nào như số nguyên thành chuỗi và sau đó trả về số nguyên đó dưới dạng chuỗi. Chúng ta có thể áp dụng phương thức toString() trên một mảng, phương thức này sẽ chuyển đổi mảng thành một chuỗi và sau đó so sánh chuỗi này với chuỗi khác const mảng1 = [1, 2, 3]; Trong đoạn mã trên, chúng tôi đã khởi tạo ba mảng và sau đó chúng tôi áp dụng phương thức toString() trên các mảng và trước tiên so sánh mảng1 với mảng2 và trả về kết quả trong bảng điều khiển. Theo cách tương tự, chúng tôi đã so sánh mảng1 với mảng3 và bảng điều khiển ghi lại kết quả Từ kết quả trên, chúng ta có thể thấy rằng “mảng1” bằng “mảng2” nhưng “mảng1” không bằng “mảng3” Phương pháp 2. Sử dụng vòng lặpHãy để chúng tôi thực hiện một phương pháp khác trong đó chúng tôi sẽ kiểm tra thủ công các phần tử của hai mảng và sau đó tạo đầu ra. Với mục đích này, hãy để tôi chỉ cho bạn mã đầu tiên hàm compareArrays () { Trong đoạn mã trên, chúng ta đã định nghĩa một hàm trong đó chúng ta khởi tạo hai mảng trước. Sau đó, chúng tôi đặt điều kiện để kiểm tra độ dài của các mảng Nếu độ dài của hai mảng không bằng nhau thì điều đó có nghĩa là hai mảng khác nhau do đó hàm sẽ trả về false Tuy nhiên, nếu độ dài bằng nhau thì chúng tôi đã đặt một vòng lặp for nơi chúng tôi sẽ kiểm tra mọi phần tử của cả hai mảng. Nếu thậm chí một phần tử không bằng nhau thì Sai sẽ được trả về. Nếu tất cả các phần tử của cả hai mảng được so khớp thì nó sẽ trả về true Đầu ra của đoạn mã trên được hiển thị bên dưới Nếu chúng ta thay đổi mã một chút bằng cách cung cấp hai mảng bằng e. g hàm compareArrays () { Đầu ra sau đây sẽ được tạo ra Phần kết luậnChúng ta không thể so sánh hai mảng trong JavaScript bằng toán tử đẳng thức == hoặc === vì mảng JavaScript là đối tượng và do đó tham chiếu được kiểm tra chứ không phải giá trị. Với mục đích này, chúng tôi đã xác định hai phương thức trong bài đăng này để so sánh các mảng. Trong phương thức đầu tiên, chúng tôi đã sử dụng phương thức tích hợp toString() trong đó trước tiên chúng tôi đã chuyển đổi các mảng thành chuỗi và sau đó kiểm tra hai chuỗi được trả về bằng toán tử đẳng thức. Trong phương pháp thứ hai, trước tiên chúng tôi kiểm tra độ dài theo cách thủ công và sau đó so sánh lần lượt tất cả các phần tử của hai mảng bằng cách sử dụng vòng lặp for Làm cách nào để so sánh hai mảng khác nhau trong JavaScript?Mặc dù JavaScript không có phương thức sẵn có để so sánh trực tiếp hai mảng, nhưng nó lại có phương thức sẵn có để so sánh hai chuỗi. Các chuỗi cũng có thể được so sánh bằng toán tử đẳng thức. Do đó, chúng ta có thể chuyển đổi mảng thành chuỗi, sử dụng phương thức Array join(), sau đó kiểm tra xem các chuỗi có bằng nhau không .
Làm thế nào để so sánh 2 mảng?Làm cách nào để so sánh hai mảng trong Java? . Chúng cùng loại Chúng có số phần tử bằng nhau Các cặp phần tử tương ứng trong cả hai mảng phải bằng nhau Thứ tự các phần tử phải giống nhau Hai tham chiếu mảng bằng nhau nếu chúng rỗng Bạn có thể sử dụng == để so sánh các mảng không?Sử dụng == trên mảng sẽ không cho kết quả mong muốn và nó sẽ so sánh chúng dưới dạng đối tượng .
Làm cách nào để so sánh hai mảng bằng forEach trong JavaScript?Bước 1. Chúng ta cần khai báo hàm với hai tham số. hàm so sánh (mảng1, mảng2){} Bước 2. Chúng ta cần khởi tạo một mảng trống. hàm so sánh (mảng1, mảng2){ const finalarray =[]; Bước 3. Chúng tôi đang nhờ sự trợ giúp của phương thức forEach trong Array. nguyên mẫu. cho mỗi(). . Bước 4. Trả lại câu trả lời cuối cùng |