ปัญหา
เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับสองอาร์เรย์ arr1 และ arr2
arr2 เป็นรายการที่ซ้ำกันของ arr1 โดยที่องค์ประกอบขาดหายไปเพียงองค์ประกอบเดียว
ฟังก์ชันของเราควรค้นหาและส่งคืนองค์ประกอบนั้น
ตัวอย่าง
ต่อไปนี้เป็นรหัส -
const arr1 = [6, 1, 3, 6, 8, 2]; const arr2 = [3, 6, 6, 1, 2]; const findMissing = (arr1 = [], arr2 = []) => { const obj = {}; for (let i = 0; i < arr1.length; i++) { if (obj[arr1[i]] === undefined) { obj[arr1[i]] = 1; } else { obj[arr1[i]]++; }; } for (let i = 0; i < arr2.length; i++) { if (obj[arr2[i]] === undefined || obj[arr2[i]]-- === 0) { return arr2[i]; } } for (key in obj) { if (obj[key] > 0) { return Number(key); } } return -1; }; console.log(findMissing(arr1, arr2));
ผลลัพธ์
ต่อไปนี้เป็นเอาต์พุตคอนโซล -
8