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

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

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

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

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

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

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

وحدة التحكم.

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

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

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

اضغط على Escape أو انقر على Customize And Control DevTools تخصيص أدوات مطوّري البرامج والتحكّم فيها، ثم اختَر إظهار درج وحدة التحكّم.

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

ينبثق الدرج في أسفل نافذة "أدوات مطوري البرامج" وتفتح علامة التبويب وحدة التحكم.

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

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

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

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

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

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

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

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

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

عرض الرسائل

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

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

افتح Console Settings (إعدادات وحدة التحكم) وأوقِف خيار Group تطابق لإيقاف السلوك التلقائي لتجميع الرسائل في وحدة التحكّم. راجع تسجيل XHR وطلبات الجلب للحصول على مثال.

عرض الرسائل من نقاط الإيقاف

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

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

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

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

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

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

تتبعات تسلسل استدعاء الدوال البرمجية.

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

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

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

تؤدي سلسلة من الأخطاء إلى إنشاء سلسلة من الأخطاء، تبدأ بـ "السبب:" في عملية تتبُّع تسلسل استدعاء الدوال البرمجية.

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

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

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

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

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

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

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

عرض N المزيد من الإطارات.

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

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

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

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

تسجيل XMLHttpRequest وطلبات الاسترجاع

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

كيفية ظهور طلبات الجلب وXMLHttpRequest المسجّلة بعد إلغاء التجميع.

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

بشكل تلقائي، يتم محو البيانات في وحدة التحكّم عند تحميل صفحة جديدة. للاحتفاظ بالرسائل في جميع عمليات تحميل الصفحات، افتح إعدادات Console، ثم فعِّل مربّع الاختيار الاحتفاظ بالسجلّ.

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

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

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

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

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

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

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

لإظهار أخطاء CORS أو إخفائها:

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

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

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

أزرار الشبكة والمشاكل.

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

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

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

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

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

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

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

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

  • Verbose
  • Info
  • Warning
  • Error

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

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

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

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

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

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

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

اكتب 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. اكتب استعلامًا. يمكنك إجراء ما يلي إذا أردت:
    • انقر على مطابقة الحالة. مطابقة حالة الأحرف لجعل طلب البحث حساسًا لحالة الأحرف.
    • انقر على زر التعبير العادي استخدام التعبير العادي للبحث باستخدام تعبير عادي.
  3. اضغط على Enter‏. للانتقال إلى نتيجة البحث السابقة أو التالية، اضغط على الزر للأعلى أو للأسفل.

تشغيل JavaScript

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

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

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

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

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

إعادة تنفيذ التعبيرات من السجلّ

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

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

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

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

أثناء كتابة تعبيرات JavaScript في وحدة التحكم، تعرض التقييم السريع معاينة للقيمة المعروضة لذلك التعبير. افتح إعدادات Console وأوقف مربع الاختيار التقييم الدقيق لإيقاف معاينات القيمة المعروضة.

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

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

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

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

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

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

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

اختيار سياق JavaScript

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

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

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

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

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

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

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

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

المواقع الخاصة بالإعلانات والمحتوى المكتسَبة

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

يتم عرض خصائص الكائن.

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

يتم عرض السمات المكتسبة.

تقييم الموصّلات المخصَّصة

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

التعرّف على الخصائص القابلة للتعداد وغير القابلة للعد

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

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

تحدِّد Console الخصائص الخاصة لمثيلات الفئة ببادئة #.

تمثّل هذه السمة ملكية خاصة لمثيل من الفئة.

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

الإكمال التلقائي للموقع الإلكتروني الخاص.

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

باستخدام تدوين ECMAScript، تحتوي وحدة التحكم على بعض الخصائص الداخلية لـ 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 عندما تكون وحدة التحكّم محل التركيز.