เราจำเป็นต้องเปรียบเทียบและรับความแตกต่างระหว่างสองอาร์เรย์ที่มีสตริงอักขระตัวเดียวปรากฏขึ้นหลายครั้งในแต่ละอาร์เรย์
ตัวอย่างสองอาร์เรย์ดังกล่าวคือ −
const arr1 = ['A', 'C', 'A', 'D']; const arr2 = ['F', 'A', 'T', 'T'];
เราจะตรวจสอบตัวละครแต่ละตัวในตำแหน่งเดียวกันและส่งคืนเฉพาะส่วนที่ต่างกันเท่านั้น
ตัวอย่าง
const arr1 = ['A', 'C', 'A', 'D'];
const arr2 = ['F', 'A', 'T', 'T'];
const findDifference = (arr1, arr2) => {
const min = Math.min(arr1.length, arr2.length);
let i = 0;
const res = [];
while (i < min) {
if (arr1[i] !== arr2[i]) {
res.push(arr1[i], arr2[i]);
};
++i;
};
return res.concat(arr1.slice(min), arr2.slice(min));
};
console.log(findDifference(arr1, arr2)); ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
[ 'A', 'F', 'C', 'A', 'A', 'T', 'D', 'T' ]