يوضّح لك هذا الدليل كيفية تنسيق الرسائل وتطبيق أسلوب عليها في وحدة تحكّم أدوات مطوّري البرامج في Chrome. راجِع بدء استخدام رسائل التسجيل للتعرّف على كيفية تسجيل الرسائل في "وحدة التحكّم".
يفترض هذا الدليل أنّك تفهم أساسيات تطوير الويب، مثل كيفية استخدام JavaScript لإضافة تفاعل إلى الصفحة.
تنسيق رسائل وحدة التحكّم
يمكنك استخدام محدّدات التنسيق لتنسيق رسائل وحدة التحكّم.
تبدأ محددات التنسيق بحرف نسبة مئوية (%) وتنتهي بـ "حرف من نوع" الذي يشير إلى نوع البيانات (عدد صحيح، عدد عائم، إلخ.).
على سبيل المثال،
- فتح وحدة التحكّم
أدخِل الأمر التالي في وحدة التحكّم.
const tools = 'Chrome DevTools'; console.warn('%s is awesome.', tools);
يؤدي الأمر أعلاه إلى إنشاء رسالة
Chrome DevTools is awesome.
.
في ما يلي قائمة بمحددات التنسيق التي تتيحها Chrome DevTools حاليًا.
المحدّد | الناتج |
---|---|
%s |
لتنسيق القيمة كسلسلة |
%i أو %d |
لتنسيق القيمة كعدد صحيح |
%f |
لتنسيق القيمة كقيمة نقطة عائمة |
%o |
لتنسيق القيمة كعنصر DOM قابل للتوسيع |
%O |
لتنسيق القيمة ككائن JavaScript قابل للتوسيع |
%c |
يتم تطبيق قواعد نمط CSS على سلسلة الإخراج كما تحددها المعلمة الثانية |
تطبيق محددات تنسيقات متعددة
يمكنك استخدام أكثر من محدد تنسيق واحد في رسالة.
أدخِل الأمر التالي في وحدة التحكّم.
console.info('The total weight of %i %s and %d %s is %f grams.', 3, 'apples', 2, 'oranges', 432.4);
يعرض الأمر أعلاه رسالة
The total weight of 3 apples and 2 oranges is 432.4 grams.
.
فهم عمليات تحويل الأنواع
سيتم تحويل رسالة الإخراج وفقًا لمحدِّد التنسيق.
أدخِل الأمر التالي في وحدة التحكّم.
console.log('I have %i apples and %d oranges.', 2, 3.5);
يعرض الأمر أعلاه رسالة
I have 2 apples and 3 oranges.
.بدلاً من تسجيل
3.5 oranges
، يكون الناتج3 oranges
. يشير الرمز%d
إلى أنّه يجب تحويل القيمة إلى عدد صحيح.
في ما يلي مثال على ما يحدث إذا كانت عملية تحويل النوع غير صالحة.
أدخِل أمر وحدة التحكّم التالي.
console.log('Jane has %i kiwis.', 'two');
يؤدي الأمر أعلاه إلى إنشاء رسالة
Jane has NaN kiwis.
.يشير الرمز
%i
إلى أنّه يجب تحويل القيمة إلى عدد صحيح، ولكن الوسيطة هي سلسلة. وبالتالي، تعرض NaN (ليس رقمًا).
تصميم رسائل وحدة التحكّم
هناك طريقتان لتنسيق رسائل وحدة التحكّم في "أدوات مطوّري البرامج".
النمط مع محدّد التنسيق
يمكنك استخدام محدّد التنسيق %c
لتصميم رسائل وحدة التحكّم باستخدام CSS.
أدخِل الأمر التالي في وحدة التحكّم.
const style = 'background-color: darkblue; color: white; font-style: italic; border: 5px solid hotpink; font-size: 2em;' console.log("%cHooray", style);
ينتج عن الأمر أعلاه
Hooray
مع تطبيق أنماط CSS.
أسلوب مع سلاسل إلغاء ANSI
يمكنك استخدام تسلسلات الهروب ANSI لتنسيق رسائل وحدة التحكّم.
من الشائع أن يلوّن مطوّرو Node.js رسائل السجلّ من خلال تسلسلات الهروب ANSI، وغالبًا ما يتم ذلك بمساعدة بعض مكتبات الأنماط، مثل chalk وcolors وansi-colors وkleur.
ومع ذلك، يمكنك تصميم الرسالة باستخدام تسلسلات الهروب ANSI بدون استخدام أي مكتبات. في ما يلي بنية الجملة:
\x1B[𝘗1;…;𝘗nm
أين،
- من
𝘗1
إلى𝘗n
هي تسلسلات فرعية صالحة لمَعلمات SGR (اختيار عرض الرسومات). - يمكن حذف أيّ من المَعلمات من
𝘗1
إلى𝘗n
، وفي هذه الحالة يفترض أن تكون قيمتها صفرًا. \x1B[m
هو اختصار\x1B[0m
، حيث ستتم إعادة ضبط سمة العرض.
على سبيل المثال،
أدخِل الأمر التالي في وحدة التحكّم.
console.log('\x1B[41;93;4mHello\x1B[m');
يعرض الأمر أعلاه رسالة
Hello
ذات خلفية حمراء ونص أصفر وخط تحته خط.
في ما يلي قائمة برموز الألوان المتوافقة في أدوات المطوّرين.
واجهة | الخلفية | مظهر فاتح | مظهر داكن |
---|---|---|---|
30 | 40 | #00000 |
#00000 |
31 | 41 | #AA0000 |
#ed4e4c |
32 | 42 | #00AA00 |
#01c800 |
33 | 43 | #AA5500 |
#d2c057 |
34 | 44 | #0000AA |
#2774f0 |
35 | 45 | #AA00AA |
#a142f4 |
36 | 46 | #00AAAA |
#12b5cb |
37 | 47 | #AAAAAA |
#cfd0d0 |
90 | 100 | #555555 |
#898989 |
91 | 101 | #FF5555 |
#f28b82 |
92 | 102 | #55FF55 |
#01c801 |
93 | 103 | #FFFF55 |
#ddfb55 |
94 | 104 | #5555FF |
#669df6 |
95 | 105 | #FF55FF |
#d670d6 |
96 | 106 | #55FFFF |
#84f0ff |
97 | 107 | #FFFFFF |
#FFFFFF |
في ما يلي قائمة برموز الأنماط المتوافقة في أدوات المطوّرين.
المَعلمات | المعنى |
---|---|
0 | إعادة ضبط جميع سمات العرض |
1 | font-weight: bold |
2 | font-weight: lighter |
3 | font-style: italic |
4 | إضافة underline إلى الموقع الإلكتروني text-decoration |
9 | إضافة line-through إلى الموقع الإلكتروني text-decoration |
22 | إعادة ضبط سمة font-weight |
23 | إعادة ضبط موقع واحد (font-style ) |
24 | إزالة underline من الموقع "text-decoration " |
29 | إزالة line-through من الموقع الإلكتروني text-decoration |
38;2;R;G;B | color: rgb(𝑅,𝐺,𝐵) |
39 | إعادة ضبط "color property " |
48;2;R;G;B | background: rgb(𝑅,𝐺,𝐵) |
49 | إعادة ضبط "background property " |
53 | إضافة overline إلى الموقع الإلكتروني text-decoration |
55 | إزالة overline من الموقع "text-decoration " |
في ما يلي مثال آخر أكثر تعقيدًا يتضمّن تنسيقات متعددة.
أدخِل الأمر التالي في وحدة التحكّم.
const hello = '\x1B[41;93;4mHello'; const space = '\x1B[m '; const world = '\x1B[34;102;9mWorld'; console.log(hello + space + world);
يُنشئ الأمر أعلاه رسالة
Hello World
بأنماط مختلفة.