So sánh hai đối tượng lồng nhau javascript
Show Sonika. Javascript đói. Làm việc tại Walmart Làm theo Ngày 5 tháng 6 năm 2022 · 3 phút đọc So sánh 2 đối tượng lồng nhau trong JavaScript [IMP]. Cuộc phỏng vấn viết mã của Apple Đặt một phiên 2
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình
Hãy so sánh hai đối tượng
Chúng ta cần kiểm tra nhiều thứ để so sánh hai đối tượng. Vì vậy, chúng tôi sẽ chia quá trình so sánh thành nhiều bước
Bước 1
Trước tiên hãy tạo một hàm ( 3) có hai tham số ( 4, 5)
Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Nếu chúng ta chuyển hai đối tượng làm đối số của hàm này, thì hàm này sẽ trả về giá trị boolean sau khi so sánh chúng
Bước 2
Công việc thực sự của chúng ta bắt đầu từ bước này. Trong bước này, chúng tôi sẽ kiểm tra xem loại và giá trị của hai đối số có giống nhau không. Nếu chúng giống nhau, chúng tôi sẽ trả lại 6. Nếu không, chúng ta sẽ chuyển sang bước tiếp theoconst k1 = { fruit: '🥝' };2 Vào chế độ toàn màn hình Thoát chế độ toàn màn hình
Bước 3
Trong bước này, chúng tôi sẽ kiểm tra xem có bất kỳ đối số nào là 7. Nếu bất kỳ đối số nào là 7, chúng tôi sẽ trả về 9. Nhưng nếu không có cái nào là null, chúng ta sẽ chuyển sang bước tiếp theoconst k1 = { fruit: '🥝' };6 Vào chế độ toàn màn hình Thoát chế độ toàn màn hình
Bước 4
Bây giờ, chúng tôi sẽ đảm bảo rằng cả hai đối số đều là đối tượng. Nếu bất kỳ đối số nào không phải là đối tượng, chúng tôi sẽ trả về 9const k1 = { fruit: '🥝' };8 Vào chế độ toàn màn hình Thoát chế độ toàn màn hình
Bước 5
Ở bước cuối cùng, chúng tôi đã đảm bảo rằng cả hai đối số đều là đối tượng. Trong bước này, chúng tôi sẽ kiểm tra xem cả hai đối tượng có cùng số thuộc tính hay không. Nếu chúng không có cùng số thuộc tính, chúng tôi sẽ trả lại 9const equals = (a, b) => { if (a === b) return true; if (a instanceof Date && b instanceof Date)0 Vào chế độ toàn màn hình Thoát chế độ toàn màn hình
Bước 6
Ở bước cuối cùng, chúng tôi đảm bảo rằng cả hai đối tượng đều có cùng số lượng thuộc tính. Bây giờ, chúng ta cần đảm bảo rằng tên thuộc tính của cả hai đối tượng đều giống nhau. Nếu chúng không giống nhau, chúng tôi sẽ trả lại 9. Nhưng nếu chúng giống nhau, chúng ta sẽ chuyển sang bước tiếp theoconst equals = (a, b) => { if (a === b) return true; if (a instanceof Date && b instanceof Date)6 Vào chế độ toàn màn hình Thoát chế độ toàn màn hình
Bước 7
Ở bước cuối cùng, chúng tôi đảm bảo rằng tên thuộc tính của cả hai đối tượng đều giống nhau. Bây giờ, chúng ta sẽ kiểm tra xem giá trị thuộc tính của cả hai đối tượng có giống nhau hay không
Bây giờ, hãy sử dụng hàm const k1 = { fruit: '🥝' };66 này để kiểm tra xem giá trị thuộc tính của cả hai đối tượng có giống nhau hay không. Nếu chúng không giống nhau, chúng tôi sẽ trả lại 9var obj1 = { prop1: 1, prop2: "foo", prop3: [{ number: 1, prop4: "foo", prop5: "a" }, { number: 2, prop4: "foo", prop5: "b" }] }var obj2 = { prop1: 3, prop2: "foo", prop3: [{ number: 1, prop4: "bar", prop5: "b" }, { number: 2, prop4: "foo", prop5: "a" }, { number: 3, prop4: "foo", prop5: "e" }], prop6: "new" }const isObject = v => v !== null && typeof v == "object";function getDifference(x, y = x) {9 Vào chế độ toàn màn hình Thoát chế độ toàn màn hình
Bước 8
Nếu chúng ta đang ở trong const k1 = { fruit: '🥝' };80 này, điều đó có nghĩa là không có điều kiện nào của bước khác phù hợp. Vì chúng tôi đã kiểm tra gần như tất cả các cách có thể mà các đối tượng không giống nhau và không có điều kiện nào trong số đó phù hợp, vì vậy bây giờ chúng tôi có thể chắc chắn rằng các đối tượng giống nhau. Vì vậy, chúng tôi sẽ chỉ trả lại 6 trong bước nàyconst isObject = v => v && typeof v === 'object';3 Vào chế độ toàn màn hình Thoát chế độ toàn màn hình
Mã đầy đủ const isObject = v => v && typeof v === 'object';4 Vào chế độ toàn màn hình Thoát chế độ toàn màn hình
hãy kiểm tra 0Vào chế độ toàn màn hình Thoát chế độ toàn màn hình 1Vào chế độ toàn màn hình Thoát chế độ toàn màn hình Đó là nó. 😃 Cảm ơn đã đọc. 🎉 Nếu bạn phát hiện bất kỳ lỗi chính tả hoặc lỗi nào hoặc nếu bạn muốn bổ sung điều gì đó, vui lòng ghi vào phần bình luận Làm cách nào để so sánh hai đối tượng lồng nhau trong JavaScript?1) Sử dụng JSON.
. Điều này hoạt động rất tốt cho các mảng lồng nhau. Xét hai đối tượng giống nhau. a===b sẽ trả về giá trị sai nhưng khi bạn chuyển đổi nó thành chuỗi và kiểm tra, nó sẽ so sánh giá trị dưới dạng kiểu nguyên thủy.
Làm cách nào để so sánh giá trị của 2 đối tượng trong JavaScript?Cách so sánh hai đối tượng trong JavaScript . Thông thường, khi bạn so sánh các kiểu dữ liệu như int và chuỗi trong JavaScript, bạn sử dụng các toán tử đẳng thức ( == và === ). . Để khắc phục điều này, một tùy chọn là xâu chuỗi cả hai đối tượng và sau đó sử dụng toán tử đẳng thức Làm cách nào để so sánh hai đối tượng trong JavaScript lodash?Trong Lodash, chúng ta có thể so sánh sâu hai đối tượng bằng cách sử dụng _. phương thức isEqual() . Phương pháp này sẽ so sánh cả hai giá trị để xác định xem chúng có tương đương nhau không.
Làm cách nào để so sánh hai danh sách đối tượng trong JavaScript?Các phương pháp so sánh hai mảng trong Javascript là. . so sánh bình đẳng. Sử dụng toán tử == hoặc === JSON. xâu chuỗi (). Chuyển đổi các mảng thành các chuỗi JSON, sau đó so sánh các mảng đó cho vòng lặp. duyệt qua cả hai mảng bằng vòng lặp for và so sánh từng phần tử Mảng. nguyên mẫu. . Mảng. nguyên mẫu |