Avatar ·

كيفية التحقق مما إذا كان الكائن مصفوفة في JavaScript

مرحباً بالجميع! لقد بدأت للتو في تعلم JavaScript وواجهت مشكلة: أحتاج إلى كتابة دالة تأخذ وسيطاً ما وتنفذ إجراءات مختلفة اعتماداً على ما إذا كان مصفوفة أم كائن عادي. لكنني لا أستطيع فهم كيفية التحقق من ذلك بشكل صحيح. حاولت استخدام typeof، لكنه يُرجع "object" لكل من المصفوفة والكائن العادي. على سبيل المثال: ```javascript const arr = [1, 2, 3]; const obj = { name: 'John' }; console.log(typeof arr); // "object" console.log(typeof obj); // "object" ``` كما حاولت التحقق عبر `arr instanceof Array`، لكنني سمعت أن هذه الطريقة قد لا تعمل إذا تم إنشاء المصفوفة في نافذة أو إطار آخر. ورأيت أيضاً نصيحة على الإنترنت لاستخدام `arr.constructor === Array`، لكنني لست متأكداً من موثوقيتها. أرجو إخباري، ما هي الطريقة الأصح والأكثر شمولاً للتحقق مما إذا كان المتغير مصفوفة؟ أحتاج إلى أن تعمل الطريقة في جميع المتصفحات والبيئات الحديثة (بما في ذلك Node.js).