.intersection() หาสมาชิกร่วมที่อยู่ในอาร์เรย์ทั้งสอง ฟังก์ชันนี้มีประโยชน์ในการค้นหาข้อมูลที่ตรงกัน เช่นลูกค้าร่วม หรือสินค้าที่ทั้งสองฝ่ายมี
={{ array1.intersection(array2) }}
={{ array1.intersection(array2) }}
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| array1 | array | Yes | อาร์เรย์แรก | |
| array2 | array | Yes | อาร์เรย์ที่สอง |
หารายชื่อลูกค้าที่ซื้อจากทั้งสองแพลตฟอร์ม
หารายชื่อสินค้าที่มีอยู่ในสโตร์ทั้งสอง
{{ [1, 2, 3, 4].intersection([3, 4, 5, 6]) }}={{ [1, 2, 3, 4].intersection([3, 4, 5, 6]) }}
[3, 4]
{{ $json.store1Customers.intersection($json.store2Customers) }}={{ $json.store1Customers.intersection($json.store2Customers) }}
[customer_1, customer_3, customer_5, ...]
{{ $node['Warehouse A'].json.items.intersection($node['Warehouse B'].json.items) }}={{ $node['Warehouse A'].json.items.intersection($node['Warehouse B'].json.items) }}
[item_1, item_2, ...]
{{ $json.appV1_users.intersection($json.appV2_users) }}={{ $json.appV1_users.intersection($json.appV2_users) }}
[user_123, user_456, ...]
ไม่สำคัญเลยครับ ไม่ว่าคุณจะใส่ array1 ก่อนหรือ array2 ก่อน .intersection() จะคืนค่าเดียวกัน เพราะการหาส่วนร่วม (intersection) มันไม่มีทิศทาง ส่วนตัวผมมักใส่อาร์เรย์ที่เล็กกว่าไว้หลัง เพื่อให้ faster เนื่องจากจะลด iteration 😎
ได้ครับ อาร์เรย์ของคุณมี duplicate ก็ใส่ได้เลย แต่ผลลัพธ์ที่ออกมาจะมีการลบ duplicate อัตโนมัติ ตัวเลขหรือข้อมูลที่ซ้ำกันจะนับแค่ครั้งเดียวเท่านั้น
ใช้เมื่อต้องการหาสมาชิกร่วมระหว่างสองกลุ่มข้อมูล ส่วนตัวผมแนะนำให้ใช้ .intersection() ในสถานการณ์เหล่านี้: การค้นหาลูกค้าร่วมระหว่างสองการแข่งขัน เปรียบเทียบสินค้าที่มีในคลังต่างๆ หาคนที่ติดตามทั้งสองโซเชียลมีเดีย หรือหาออร์เดอร์ที่ซ้ำกัน โดยทั่วไปใช้กับ Set Node หรือ Code Node ก็ได้ครับ
.intersection() เป็นฟังก์ชันที่หาข้อมูลที่อยู่ในอาร์เรย์ทั้งสอง (ส่วนที่ซ้ำกัน) ใช้เมื่อต้องการหาสมาชิกร่วมระหว่างสองรายชื่อ ตัวอย่างเช่น ถ้าคุณมีลูกค้าจากสองสาขาต่างกัน intersection จะช่วยคุณหาว่าใครบ้างที่เป็นลูกค้าร่วม หรือสินค้าใดบ้างที่มีในทั้งสองคลัง
ที่เจ๋งคือ ฟังก์ชันนี้ช่วยให้เราค้นหาข้อมูลตรงกันได้ง่ายๆ โดยไม่ต้องเขียนโค้ดซับซ้อนหรือสร้าง Loop ครับ ส่วนตัวผมใช้บ่อยมากในสถานการณ์ที่ต้องเปรียบเทียบสองชุดข้อมูล เช่น หาลูกค้าที่สั่งซื้อในเดือนนี้และเดือนที่แล้ว หรือหารหัสสินค้าที่มีพร้อมในทั้งสองคลัง 😎