مقارنة مصفوفات الكائنات في جافا سكريبت: دليل شامل
المقدمة:
في تشفير جافا سكريبت، هناك غالبًا ما تنشأ الحاجة إلى مقارنة صفائف الكائنات. ومع ذلك، قد تمتلك الكائنات خصائص مختلفة مع قيم مفقودة، مما يعقد عملية المقارنة.
نهج القوة الغاشمة: إحدى الطرق المباشرة هي التكرار من خلال كل مصفوفة ومقارنة قيم الخصائص الثمانية على حدة. ومع ذلك، يمكن أن يصبح هذا الأمر مملاً وغير فعال.
حل أنيق:
1. مقارنة خصائص العد: للتغلب على هذه التحديات، يمكنك استخدام الخطوات التالية:
2. طرق Object.keys() و Every(): يعد تنفيذ هذه التقنية في JavaScript أمرًا مباشرًا باستخدام وظائف Object.keys() و every():
const objectsEqual = (o1, o2) =>
Object.keys(o1).length === Object.keys(o2).length
&& Object.keys(o1).every(p => o1[p] === o2[p]);
مثال للاستخدام:
const obj1 = { name: 'John', age: 33};
const obj2 = { age: 33, name: 'John' };
const obj3 = { name: 'John', age: 45 };
console.log(objectsEqual(obj1, obj2)); // true
console.log(objectsEqual(obj1, obj3)); // false
تضمن هذه الطريقة مقارنة موثوقة لمصفوفات الكائنات، بغض النظر عن عدد الخصائص أو القيم المفقودة. تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3