Computer >> Máy Tính >  >> Lập trình >> Javascript

Làm cách nào để tìm các phần tử chung giữa hai hoặc nhiều mảng trong JavaScript?


Nếu chỉ có hai mảng thì bằng cách sử dụng các phương pháp logic, có thể tìm thấy các phần tử chung. Nhưng nếu có nhiều mảng hơn thì rất khó tìm được các phần tử chung. Vì vậy, để làm cho quá trình dễ dàng nhất có thể, _.intersection () phương pháp đi vào hình ảnh. Đây là một hàm trong underscore.js framework, một thư viện javascript.

_.intersection () phương thức sẽ kiểm tra từng phần tử của tất cả các mảng và hiển thị các giá trị chung. Nếu ít nhất một mảng trong một nhóm mảng không có thậm chí một giá trị chung thì sẽ không có đầu ra nào được hiển thị.

cú pháp

_.intersection( array1, array2, .... );

Nó chấp nhận các mảng và cố gắng tìm ra các giá trị chung và hiển thị chúng dưới dạng đầu ra.

Ví dụ

Trong ví dụ sau, _.intersection () phương pháp đã xem xét kỹ lưỡng từng giá trị của các mảng được cung cấp và hiển thị các giá trị chung dưới dạng đầu ra.

<html>
<body>
<script
   src ="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js" >
</script>
</head>
<body>
<script type="text/javascript">
   document.write(_.intersection([1, 2, 3, 4, 5],
                                 [1, 2, 3, 4, 5, 6],
                                 [1, 2, 3, 4, 5, 6, 7, 8,]));
</script>
</body>
</html>

Đầu ra

1,2,3,4,5

Phương thức này không chỉ chấp nhận số hoặc chuỗi làm đầu vào mà còn chấp nhận cả false các giá trị như void, null, v.v. làm đầu vào.

Ví dụ

Trong ví dụ sau, không chỉ số mà còn cả false các giá trị đã được thông qua. _.underscore () phương pháp đã xem xét kỹ lưỡng từng giá trị bao gồm cả false các giá trị hiển thị các giá trị chung.

<html>
<body>
<script
   src ="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js" >
</script>
</head>
<body>
<script type="text/javascript">
   document.write(_.intersection([1, 2, 3, "null", "undefined"],
                                [1, 2, 3, "null", "undefined", "void"],
                                 [1, "null","void"]));
</script>
</body>
</html>

Đầu ra

1,null