<div> <p>قم بتصفية حسب الواجهة</p> </div>

TypeScript Easy interfaces

مهمة «<div> <p>قم بتصفية حسب الواجهة</p> </div>»

اكتب دالة filterByInterface، التي تستقبل مصفوفة من الكائنات وواجهة (على شكل سلسلة نصية) وتعيد مصفوفة جديدة تحتوي فقط على الكائنات التي تمتلك جميع الحقول المحددة في الواجهة (الواجهة معطاة ككائن بمفاتيح وقيم — أنواع الحقول). قد تحتوي الكائنات على حقول إضافية، لكن يجب أن تكون جميع الحقول الإلزامية للواجهة موجودة. للتبسيط، نفترض أن الواجهة تحتوي دائمًا على حقول من نوع سلسلة نصية فقط. إذا كان الكائن يفتقر إلى حقل إلزامي واحد على الأقل، يتم استبعاده.

تنسيق الإدخال

السطر الأول هو الرقم n (عدد الكائنات). ثم n من الأسطر، كل منها بتنسيق كائن JSON. ثم سطر واحد هو كائن JSON يمثل واجهة (المفاتيح هي أسماء الحقول، والقيم هي سلاسل نصية 'string').

تنسيق الإخراج

<div>إخراج مصفوفة JSON من الكائنات المصفاة.</div>

main.ts