مرجع ميزات وحدة التحكّم

Kayce Basques
Kayce Basques
Sofia Emelianova
Sofia Emelianova

تقدّم هذه الصفحة مرجعًا للميزات المتعلّقة بوحدة تحكّم "أدوات مطوّري البرامج في Chrome". ويفترض هذا الدليل أنّك على دراية مسبقة باستخدام "وحدة التحكّم" لعرض الرسائل المسجّلة وتشغيل JavaScript. إذا لم يكن الأمر كذلك، يُرجى مراجعة القسم البدء.

إذا كنت تبحث عن مرجع واجهة برمجة التطبيقات بشأن وظائف مثل console.log()، يمكنك الاطّلاع على مرجع واجهة برمجة التطبيقات في "وحدة التحكّم". للحصول على مرجع بشأن وظائف مثل monitorEvents()، يُرجى الاطّلاع على مرجع Console Utilities API.

فتح وحدة التحكّم

يمكنك فتح "وحدة التحكّم" كـ لوحة أو علامة تبويب في "الدرج".

فتح لوحة "وحدة التحكّم"

اضغط على Control+Shift+J أو Command+Option+J (في نظام التشغيل Mac).

وحدة التحكّم

لفتح "وحدة التحكّم" من قائمة الأوامر، ابدأ بكتابة Console ثم شغِّل الأمر Show Console الذي يحمل الشارة Panel بجانبه.

الأمر الخاص بعرض لوحة "وحدة التحكّم"

فتح "وحدة التحكّم" في الدرج

اضغط على Escape أو انقر على تخصيص أدوات مطوّلي البرامج والتحكّم بها تخصيص "أدوات مطوّري البرامج" والتحكّم فيها ثم اختَر عرض لوحة وحدة التحكّم.

إظهار درج وحدة التحكّم

يظهر "الدرج" في أسفل نافذة "أدوات مطوّري البرامج"، مع فتح علامة التبويب وحدة التحكّم.

علامة التبويب "وحدة التحكّم" في الدرج

لفتح علامة التبويب "وحدة التحكّم" من قائمة الأوامر، ابدأ بكتابة Console ثم شغِّل الأمر Show Console الذي يحمل الشارة الدرج بجانبه.

الأمر الخاص بعرض علامة التبويب "وحدة التحكّم" في "الدرج"

فتح "إعدادات وحدة التحكّم"

انقر على الإعدادات. إعدادات وحدة التحكّم في أعلى يسار وحدة التحكّم.

إعدادات وحدة التحكّم

توضّح الروابط أدناه كل إعداد:

انقر على إظهار الشريط الجانبي لوحدة التحكّم إظهار الشريط الجانبي لوحدة التحكّم لإظهار الشريط الجانبي الذي يفيد في الفلترة.

الشريط الجانبي لوحدة التحكّم

عرض الرسائل

يحتوي هذا القسم على ميزات تغيّر طريقة عرض الرسائل في "وحدة التحكّم". راجِع عرض الرسائل للحصول على شرح عملي.

إيقاف تجميع الرسائل

افتح إعدادات وحدة التحكّم وأوقِف تجميع الرسائل المتشابهة لإيقاف سلوك التجميع التلقائي للرسائل في وحدة التحكّم. يمكنك الاطّلاع على تسجيل طلبات XHR وFetch للحصول على مثال.

عرض الرسائل من نقاط التوقف

تضع وحدة التحكّم علامة على الرسائل التي يتم تشغيلها بواسطة نقاط التوقف بالطريقة التالية:

تضع "وحدة التحكّم" علامة على الرسائل التي تم إنشاؤها بواسطة نقاط الإيقاف المشروطة ونقاط تسجيل الدخول.

للانتقال إلى محرّر نقاط التوقّف المضمّن في لوحة المصادر، انقر على رابط إلى موضع ثابت بجانب رسالة نقطة التوقّف.

عرض تقارير تتبُّع تسلسل استدعاء الدوال البرمجية

تتضمّن وحدة التحكّم ميزة تسجيل تتبُّع تسلسل استدعاء الدوال البرمجية تلقائيًا للأخطاء والتحذيرات. تتبُّع تسلسل استدعاء الدوال البرمجية هو سجلّ لاستدعاءات الدوال (الإطارات) التي أدّت إلى الخطأ أو التحذير. تعرض وحدة التحكّم هذه اللقطات بترتيب عكسي: تكون أحدث لقطة في الأعلى.

لعرض تتبُّع تسلسل استدعاء الدوال البرمجية، انقر على رمز التوسيع توسيع بجانب خطأ أو تحذير.

تقارير تتبُّع تسلسل استدعاء الدوال البرمجية

عرض أسباب الخطأ في تقارير تتبُّع تسلسل استدعاء الدوال البرمجية

يمكن أن تعرض لك وحدة التحكّم سلاسل أسباب الخطأ في تتبُّع تسلسل استدعاء الدوال البرمجية، إذا توفّرت.

لتسهيل عملية تصحيح الأخطاء، يمكنك تحديد أسباب الأخطاء عند رصد الأخطاء وإعادة طرحها. أثناء تتبُّع وحدة التحكّم لسلسلة الأسباب، تطبع كل حزمة أخطاء بالبادئة Caused by:، ما يتيح لك العثور على الخطأ الأصلي.

سلسلة أسباب الخطأ التي تبدأ بـ "Caused by:" في تتبُّع تسلسل استدعاء الدوال البرمجية

عرض عمليات تتبُّع تسلسل استدعاء الدوال البرمجية غير المتزامنة

إذا كان الإطار الذي تستخدمه يتيح ذلك أو عند استخدام عناصر أساسية لجدولة المتصفّح مباشرةً، مثل setTimeout، يمكن لأداة DevTools تتبُّع العمليات غير المتزامنة من خلال ربط كلا جزأَي الرمز غير المتزامن معًا.

في هذه الحالة، يعرض تتبُّع تسلسل استدعاء الدوال البرمجية "القصة الكاملة" للعملية غير المتزامنة.

تتبُّع تسلسل استدعاء الدوال البرمجية غير المتزامنة

عرض إطارات معروفة تابعة لجهات خارجية في عمليات تتبُّع تسلسل استدعاء الدوال البرمجية

عندما تتضمّن خرائط المصادر الحقل ignoreList، تخفي وحدة التحكّم تلقائيًا من عمليات تتبُّع تسلسل استدعاء الدوال البرامج النصية من مصادر خارجية تم إنشاؤها بواسطة أدوات تجميع (مثل webpack) أو أُطر (مثل Angular).

لعرض تتبُّع تسلسل استدعاء الدوال البرمجية الكامل، بما في ذلك إطارات الجهات الخارجية، انقر على عرض N إطارًا إضافيًا في أسفل تتبُّع تسلسل استدعاء الدوال البرمجية.

عرض N إطارًا إضافيًا

لعرض تتبُّع تسلسل استدعاء الدوال البرمجية الكامل دائمًا، أوقِف الإعداد الإعدادات. الإعدادات > قائمة التجاهل > إضافة النصوص البرمجية المعروفة التابعة لجهات خارجية إلى قائمة التجاهل تلقائيًا.

إضافة النصوص البرمجية المعروفة التابعة لجهات خارجية إلى قائمة التجاهل تلقائيًا

تسجيل طلبات XHR وFetch

افتح "إعدادات وحدة التحكّم" وفعِّل تسجيل XMLHttpRequests لتسجيل جميع طلبات XMLHttpRequest وFetch في "وحدة التحكّم" عند حدوثها.

تسجيل طلبات XMLHttpRequest وFetch

تعرض الرسالة الأولى في المثال أعلاه سلوك التجميع التلقائي في "وحدة التحكّم". يوضّح المثال أدناه كيف يبدو السجلّ نفسه بعد إيقاف تجميع الرسائل.

شكل طلبات XMLHttpRequest وFetch المسجّلة بعد إلغاء تجميعها

الاحتفاظ بالرسائل في جميع عمليات تحميل الصفحات

تتم تلقائيًا محو بيانات "وحدة التحكّم" عند تحميل صفحة جديدة. لإبقاء الرسائل ظاهرة عند إعادة تحميل الصفحة، افتح إعدادات وحدة التحكّم ثم ضَع علامة في المربّع الاحتفاظ بالسجلّ.

إخفاء رسائل الشبكة

يسجّل المتصفّح تلقائيًا رسائل الشبكة في وحدة التحكّم. على سبيل المثال، تمثّل الرسالة الأولى في المثال التالي رمز الحالة 404.

رسالة 404 في "وحدة التحكّم"

لإخفاء رسائل الشبكة، اتّبِع الخطوات التالية:

  1. فتح إعدادات وحدة التحكّم
  2. ضَع علامة في مربّع الاختيار إخفاء الشبكة.

إظهار أخطاء CORS أو إخفاؤها

يمكن أن تعرض وحدة التحكّم أخطاء CORS إذا تعذّرت طلبات الشبكة بسبب مشاركة الموارد المتعدّدة المصادر (CORS).

لعرض أخطاء CORS أو إخفائها، اتّبِع الخطوات التالية:

  1. فتح إعدادات وحدة التحكّم
  2. ضَع علامة في المربّع عرض أخطاء CORS في وحدة التحكّم أو أزِلها.

عرض أخطاء CORS في وحدة التحكّم

إذا تم ضبط وحدة التحكّم على عرض أخطاء CORS وواجهت هذه الأخطاء، يمكنك النقر على الأزرار التالية بجانب الأخطاء:

زرّا "الشبكة" و"المشاكل"

تصفية الرسائل

تتوفّر العديد من الطرق لاستبعاد الرسائل في "وحدة التحكّم".

فلترة رسائل المتصفّح

افتح الشريط الجانبي لوحدة التحكّم وانقر على رسائل المستخدم لعرض الرسائل الواردة من JavaScript الخاصة بالصفحة فقط.

عرض رسائل المستخدمين

الفلترة حسب مستوى السجلّ

تحدّد "أدوات مطوّري البرامج" مستويات خطورة لمعظم طرق console.*.

هناك أربعة مستويات:

  • Verbose
  • Info
  • Warning
  • Error

على سبيل المثال، console.log() في المجموعة Info، بينما console.error() في المجموعة Error. يوضّح مرجع واجهة برمجة التطبيقات في "وحدة التحكّم" مستوى الخطورة لكل طريقة قابلة للتطبيق.

تتضمّن كل رسالة يسجّلها المتصفّح في "وحدة التحكّم" مستوى خطورة أيضًا. يمكنك إخفاء أي مستوى من الرسائل التي لا تهمّك. على سبيل المثال، إذا كنت مهتمًا فقط بالرسائل Error، يمكنك إخفاء المجموعات الثلاث الأخرى.

انقر على القائمة المنسدلة مستويات السجلّ لتفعيل أو إيقاف رسائل Verbose أو Info أو Warning أو Error.

القائمة المنسدلة "مستويات السجلّ"

يمكنك أيضًا فلترة النتائج حسب مستوى السجلّ من خلال إظهار الشريط الجانبي لوحدة التحكّم فتح الشريط الجانبي لوحدة التحكّم ثم النقر على الأخطاء أو التحذيرات أو المعلومات أو التفاصيل.

استخدام الشريط الجانبي لعرض التحذيرات

فلترة الرسائل حسب عنوان URL

اكتب url: متبوعًا بعنوان URL لعرض الرسائل الواردة من هذا العنوان فقط. بعد كتابة url: تعرض "أدوات مطوّلي البرامج" جميع عناوين URL ذات الصلة.

فلتر عناوين URL

يمكنك أيضًا استخدام النطاقات. على سبيل المثال، إذا كان النصان البرمجيان https://example.com/a.js وhttps://example.com/b.js يسجّلان الرسائل، يتيح لك url:https://example.com التركيز على الرسائل الواردة من هذين النصين البرمجيين.

لإخفاء جميع الرسائل من عنوان URL محدّد، اكتب -url: متبوعًا بعنوان URL، مثلاً https://b.wal.co. هذا فلتر سلبي لعناوين URL.

فلتر عناوين URL سلبية تخفي "أدوات مطوّري البرامج" جميع الرسائل التي تتطابق مع عنوان URL المحدّد.

يمكنك أيضًا عرض الرسائل من عنوان URL واحد من خلال فتح الشريط الجانبي في "وحدة التحكّم"، وتوسيع قسم رسائل المستخدم، ثم النقر على عنوان URL للبرنامج النصي الذي يتضمّن الرسائل التي تريد التركيز عليها.

عرض الرسائل من نص برمجي معيّن

فلترة الرسائل من سياقات مختلفة

لنفترض أنّ لديك إعلانًا على صفحتك. الإعلان مضمّن في <iframe> ويؤدي إلى إنشاء الكثير من الرسائل في "وحدة التحكّم". بما أنّ هذا الإعلان يظهر في سياق JavaScript مختلف، إحدى طرق إخفاء رسائله هي فتح إعدادات "وحدة التحكّم" وتفعيل مربّع الاختيار السياق المحدّد فقط.

فلترة الرسائل التي لا تتطابق مع نمط تعبير عادي

اكتب تعبيرًا عاديًا، مثل /[foo]\s[bar]/، في مربّع النص فلتر لاستبعاد أي رسائل لا تتطابق مع هذا النمط. لا يمكن إدخال المسافات، يُرجى استخدام \s بدلاً من ذلك. تتحقّق "أدوات مطوّري البرامج" مما إذا كان النمط متوفّرًا في نص الرسالة أو النص البرمجي الذي أدّى إلى تسجيل الرسالة.

على سبيل المثال، يعمل ما يلي على فلترة جميع الرسائل التي لا تتطابق مع /[gm][ta][mi]/.

فلترة أي رسائل لا تتطابق مع ‎ /[gm][ta][mi]/‎

للبحث عن نص في رسائل السجلّ:

  1. لفتح شريط بحث مضمّن، اضغط على Command+F (في نظام التشغيل Mac) أو Ctrl+F (في نظام التشغيل Windows أو Linux).
  2. في الشريط، اكتب طلب البحث. في هذا المثال، يكون طلب البحث هو legacy. كتابة طلب بحث يمكنك اختياريًا إجراء ما يلي:
    • انقر على مطابقة الحالة مطابقة حالة الأحرف لجعل طلب البحث حساسًا لحالة الأحرف.
    • انقر على زر التعبير العادي استخدام التعبير العادي للبحث باستخدام تعبير RegEx.
  3. اضغط على Enter. للانتقال إلى نتيجة البحث السابقة أو التالية، اضغط على الزر المتّجه للأعلى أو للأسفل.

تشغيل JavaScript

يحتوي هذا القسم على ميزات متعلّقة بتشغيل JavaScript في "وحدة التحكّم". راجِع مقالة تشغيل JavaScript للحصول على شرح عملي.

خيارات نسخ السلسلة

تعرض وحدة التحكّم السلاسل كقيم ثابتة بتنسيق JavaScript صالح تلقائيًا. انقر بزر الماوس الأيمن على إحدى النتائج واختَر من بين ثلاثة خيارات للنسخ:

  • نسخ السلسلة كقيمة ثابتة بتنسيق JavaScript تتخطى هذه الدالة الرموز الخاصة المناسبة وتضع السلسلة بين علامات اقتباس مفردة أو مزدوجة أو علامات اقتباس معكوسة، وذلك حسب المحتوى.
  • نسخ محتوى السلسلة ينسخ السلسلة الأولية المطابقة إلى الحافظة، بما في ذلك الأسطر الجديدة والرموز الخاصة الأخرى.
  • نسخ السلسلة كقيمة ثابتة بتنسيق JSON تنسيق السلسلة إلى JSON صالح

خيارات النسخ

إعادة تشغيل التعبيرات السابقة ومحو السجلّ

اضغط على مفتاح السهم المتّجه للأعلى للتنقّل بين سجلّ تعابير JavaScript التي نفّذتها سابقًا في وحدة التحكّم. اضغط على Enter لتشغيل هذا التعبير مرة أخرى.

لمحو سجلّ وحدة التحكّم، انقر بزر الماوس الأيمن على مساحة فارغة في وحدة التحكّم واختَر محو سجلّ وحدة التحكّم من قائمة السياق.

محو الرسائل ونسخها وتوسيعها وتصغيرها وحفظها

لمحو نافذة وحدة التحكّم، نفِّذ أحد الإجراءات التالية:

  • انقر على حظر محو وحدة التحكّم في شريط الإجراءات في أعلى الصفحة.
  • اضغط على Ctrl+L أو Cmd+K.
  • انقر بزر الماوس الأيمن على مساحة فارغة في وحدة التحكّم واختَر محو وحدة التحكّم من قائمة السياق.

لتوسيع جميع الرسائل أو تصغيرها، انقر على توسيع الكل أو تصغير الكل في شريط الإجراءات في أعلى الصفحة.

قائمة السياقات التي تظهر عند النقر بزر الماوس الأيمن

من قائمة السياق، يمكنك أيضًا إجراء ما يلي:

  • نسخ وحدة التحكّم: لنسخ جميع الرسائل الحالية إلى الحافظة، ولكن ليس سجلّ الأوامر السابقة
  • حفظ باسم...: احفظ جميع الرسائل الحالية في ملف .log نصي عادي.

مشاهدة قيمة تعبير في الوقت الفعلي باستخدام "التعبيرات المباشرة"

إذا كنت تكتب عبارة JavaScript نفسها في &quot;وحدة التحكّم&quot; بشكل متكرّر، قد يكون من الأسهل إنشاء تعبير مباشر. باستخدام التعابير المباشرة، يمكنك كتابة تعبير مرة واحدة ثم تثبيته في أعلى وحدة التحكّم. يتم تعديل قيمة التعبير في الوقت الفعلي تقريبًا. اطّلِع على مقالة مشاهدة قيم تعبيرات JavaScript في الوقت الفعلي باستخدام "التعبيرات المباشرة".

إيقاف التقييم الفوري

أثناء كتابة تعبيرات JavaScript في &quot;وحدة التحكّم&quot;، تعرض ميزة التقييم السريع معاينة لقيمة الإرجاع الخاصة بهذا التعبير. افتح إعدادات وحدة التحكّم وأزِل العلامة من مربّع الاختيار التقييم السريع لإيقاف معاينات القيمة المعروضة.

تفعيل المستخدمين من خلال التقييم

تفعيل المستخدم هو حالة جلسة تصفّح تعتمد على إجراءات المستخدم. تعني الحالة "نشط" أنّ المستخدِم يتفاعل حاليًا مع الصفحة أو تفاعل معها منذ تحميلها.

لتفعيل المستخدم عند إجراء أي تقييم، افتح "إعدادات وحدة التحكّم" وضَع علامة في المربّع مربّع اختيار التعامل مع عملية تقييم الرمز كإجراء من جانب المستخدم.

إيقاف الإكمال التلقائي من السجلّ

أثناء كتابة عبارة، تعرض النافذة المنبثقة للإكمال التلقائي في &quot;وحدة التحكّم&quot; العبارات التي نفّذتها سابقًا. يتم إضافة الحرف > قبل هذه العبارات. في المثال التالي، قيّمت "أدوات مطوّري البرامج" سابقًا document.querySelector('a') وdocument.querySelector('img').

النافذة المنبثقة للإكمال التلقائي التي تعرض عبارات من السجلّ

افتح إعدادات وحدة التحكّم وأزِل العلامة من المربّع بجانب الإكمال التلقائي من السجلّ لإيقاف عرض العبارات من سجلّك.

اختيار سياق JavaScript

يتم تلقائيًا ضبط القائمة المنسدلة سياق JavaScript على أعلى، ما يمثّل سياق التصفّح للمستند الرئيسي.

القائمة المنسدلة &quot;سياق JavaScript&quot;

لنفترض أنّ لديك إعلانًا على صفحتك مضمّنًا في <iframe>. تريد تنفيذ JavaScript من أجل تعديل نموذج العناصر في المستند (DOM) الخاص بالإعلان. لإجراء ذلك، عليك أولاً اختيار سياق التصفّح للإعلان من القائمة المنسدلة سياق JavaScript.

اختيار سياق JavaScript مختلف

فحص خصائص العناصر

يمكن أن تعرض وحدة التحكّم قائمة تفاعلية بسمات كائن JavaScript الذي تحدّده.

لتصفُّح القائمة، اكتب اسم العنصر في وحدة التحكّم واضغط على Enter.

لفحص خصائص عناصر DOM، اتّبِع الخطوات الواردة في عرض خصائص عناصر DOM.

تحديد الخصائص الخاصة والموروثة

ترتّب وحدة التحكّم سمات العنصر الخاصة أولاً وتبرزها بخط غليظ.

عرض خصائص الكائن

تظهر الخصائص المكتسبة من سلسلة النماذج الأولية بخط عادي. تعرض وحدة التحكّم هذه القيم على العنصر نفسه من خلال تقييم أدوات الوصول الأصلية المقابلة للعناصر المضمّنة.

جارٍ عرض المواقع الموروثة.

تقييم أدوات الوصول المخصّصة

بشكلٍ تلقائي، لا تقيِّم "أدوات مطوّري البرامج" أدوات الوصول التي تنشئها. دالة الوصول المخصّصة لتقييم دالة استرداد القيمة المخصّصة على عنصر، انقر على (...). دالة استرداد قيمة مخصصة تم تقييمها.

التعرّف على السمات القابلة للتعداد وغير القابلة للتعداد

تظهر الخصائص القابلة للتعداد بلون ساطع. يتم تجاهل الخصائص غير القابلة للتعداد. السمات القابلة للتعداد وغير القابلة للتعداد يمكن تكرار السمات القابلة للتعداد باستخدام حلقة for … in أو طريقة Object.keys().

رصد الخصائص الخاصة لمثيلات الفئات

تحدّد وحدة التحكّم السمات الخاصة لمثيلات الفئات باستخدام البادئة #.

السمة الخاصة بمثيل فئة

يمكن لوحدة التحكّم أيضًا إكمال الخصائص الخاصة تلقائيًا حتى عند تقييمها خارج نطاق الفئة.

الإكمال التلقائي للملكية الخاصة

فحص سمات JavaScript الداخلية

باستخدام صيغة ECMAScript، يضمّ الكائن Console بعض السمات الداخلية في JavaScript بين قوسين مربّعين مزدوجين. ولا يمكنك التفاعل مع هذه السمات في الرمز البرمجي. ومع ذلك، قد يكون من المفيد فحصها.

قد تظهر لك السمات الداخلية التالية في عناصر مختلفة:

فحص الدوال

في JavaScript، الدوال هي أيضًا كائنات ذات سمات. ومع ذلك، إذا كتبت اسم دالة في وحدة التحكّم، ستستدعيها "أدوات مطوّري البرامج" بدلاً من عرض خصائصها.

لعرض خصائص الدالة الداخلية في JavaScript، استخدِم الأمر console.dir().

فحص خصائص دالة

تتضمّن الدوال الخصائص التالية:

  • [[FunctionLocation]]: رابط يؤدي إلى السطر الذي يتضمّن تعريف الدالة في ملف مصدر
  • [[Scopes]]: تعرض القيم والعبارات التي يمكن للدالة الوصول إليها. للاطّلاع على نطاقات الدوال أثناء تصحيح الأخطاء، راجِع عرض وتعديل الخصائص المحلية والمغلقة والعامة.
  • تتضمّن الدوال المرتبطة الخصائص التالية:
    • [[TargetFunction]]: هدف bind()
    • [[BoundThis]]، وهي قيمة this.
    • [[BoundArgs]]: صفيف وسيطات الدالة. دالة مرتبطة
  • يتم وضع علامة [[IsGenerator]]: true على دوال إنشاء. دالة المولد
  • تعرض المولدات عناصر مكرّرة ولها الخصائص التالية:
    • [[GeneratorLocation]]: رابط يؤدي إلى سطر يتضمّن تعريف المولد في ملف مصدر
    • [[GeneratorState]]: suspended أو closed أو running.
    • [[GeneratorFunction]]: المولد الذي عرض العنصر.
    • [[GeneratorReceiver]]. عنصر يتلقّى القيمة. كائن مكرّر

محو وحدة التحكّم

يمكنك استخدام أيّ من عمليات سير العمل التالية لمحو بيانات "وحدة التحكّم":

  • انقر على محو وحدة التحكّم محو..
  • انقر بزر الماوس الأيمن على رسالة، ثم اختَر محو وحدة التحكّم.
  • اكتب clear() في "وحدة التحكّم" ثم اضغط على Enter.
  • استدعِ console.clear() من JavaScript الخاص بصفحة الويب.
  • اضغط على Control+L عندما تكون "وحدة التحكّم" محل التركيز.