مرجع واجهة برمجة تطبيقات Console

صوفيا إميليانوفا
صوفيا إميليانوفا

استخدم Console API لكتابة رسائل إلى وحدة التحكُّم من JavaScript. راجع البدء في تسجيل الرسائل في وحدة التحكم للحصول على مقدمة تفاعلية عن الموضوع.

يُرجى الاطّلاع على مرجع واجهة برمجة تطبيقات خدمات وحدة التحكم إذا كنت تبحث عن الطرق الملائمة، مثل debug(function) أو monitorEvents(node) التي لا تتوفّر إلا من وحدة التحكّم.

console.assert(expression, object)

مستوى السجلّ: Error

كتابة خطأ في وحدة التحكّم عند تقييم expression إلى false.

const x = 5;
const y = 3;
const reason = 'x is expected to be less than y';
console.assert(x < y, {x, y, reason});

نتيجة المثال console.assert() أعلاه.

console.clear()

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

console.clear();

في حال تفعيل Preserve Log (الاحتفاظ بالسجلّ)، سيتم إيقاف console.clear().

بدلاً من ذلك، يمكنك محو وحدة التحكم بالنقر على رمز ALT_TEXT_HERE.

console.count([label])

مستوى السجلّ: Info

لكتابة عدد مرات استدعاء count() على السطر نفسه وباستخدام السمة label نفسها. يمكنك الاتصال بالرقم console.countReset([label]) لإعادة ضبط العدد.

console.count();
console.count('coffee');
console.count();
console.count();

نتيجة المثال console.count() أعلاه.

console.countReset([label])

إعادة ضبط عدد

console.countReset();
console.countReset('coffee');

console.createTask(name)

تعرض النسخة الافتراضية Task التي تربط تتبُّع تسلسل استدعاء الدوال البرمجية الحالية بكائن task الذي تم إنشاؤه. يمكنك لاحقًا استخدام الكائن task هذا لتشغيل دالة (f في المثال التالي). تنفِّذ task.run(f) حمولة عشوائية وتعيد توجيه القيمة المعروضة مرة أخرى إلى المتصل.

// Task creation
const task = console.createTask(name);

// Task execution
task.run(f); // instead of f();

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

console.debug(object [, object, ...])

مستوى السجلّ: Verbose

يتطابق مع console.log(object [, object, ...]) باستثناء مستوى السجل المختلف.

console.debug('debug');

نتيجة المثال console.debug() أعلاه.

console.dir(object)

مستوى السجلّ: Info

يطبع تمثيل JSON للعنصر المحدد.

console.dir(document.head);

نتيجة المثال console.dir() أعلاه.

console.dirxml(node)

مستوى السجلّ: Info

لطباعة تمثيل XML للعناصر التابعة لـ node.

console.dirxml(document);

نتيجة المثال console.dirxml() أعلاه.

console.error(object [, object, ...])

مستوى السجلّ: Error

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

console.error("I'm sorry, Dave. I'm afraid I can't do that.");

نتيجة المثال console.error() أعلاه.

console.group(label)

تجمّع الرسائل مع بعضها بشكل مرئي إلى أن يتم طلب console.groupEnd(label). ويمكنك استخدام console.groupCollapsed(label) لتصغير المجموعة عند تسجيلها في وحدة التحكّم.

const label = 'Adolescent Irradiated Espionage Tortoises';
console.group(label);
console.info('Leo');
console.info('Mike');
console.info('Don');
console.info('Raph');
console.groupEnd(label);

نتيجة المثال console.group() أعلاه.

بالإضافة إلى ذلك، يمكنك تضمين المجموعات.

const timeline1 = 'New York 2012';
const timeline2 = 'Camp Lehigh 1970';
console.group(timeline1);
console.info('Mind');
console.info('Time');
console.group(timeline2);
console.info('Space');
console.info('Extra Pym Particles');
console.groupEnd(timeline2);
console.groupEnd(timeline1);

المجموعات المتداخلة.

console.groupCollapsed(label)

مثل console.group(label)، باستثناء أنه يتم تصغير المجموعة في البداية عند تسجيلها في وحدة التحكم.

console.groupEnd(label)

إيقاف تجميع الرسائل بشكل مرئي. يمكنك الاطّلاع على console.group.

console.info(object [, object, ...])

مستوى السجلّ: Info

تتطابق مع السمة console.log(object [, object, ...]).

console.info('info');

نتيجة المثال console.info() أعلاه.

console.log(object [, object, ...])

مستوى السجلّ: Info

يطبع رسالة إلى وحدة التحكم.

console.log('log');

نتيجة مثال console.log() أعلاه.

console.table(array [, column])

مستوى السجلّ: Info

لتسجيل صفيف من الكائنات في شكل جدول.

var people = [
  {
    first: 'René',
    last: 'Magritte',
  },
  {
    first: 'Chaim',
    last: 'Soutine',
    birthday: '18930113',
  },
  {
    first: 'Henri',
    last: 'Matisse',
  }
];
console.table(people);

نتيجة المثال console.table() أعلاه.

يُسجِّل console.table() جميع بيانات الجدول تلقائيًا. لعرض عمود واحد أو مجموعة فرعية من الأعمدة، يمكنك استخدام المَعلمة الاختيارية الثانية وتحديد اسم العمود أو أسماءه كسلسلة أو مصفوفة من السلاسل. مثال:

console.table(people, ['last', 'birthday']);

مجموعة فرعية من الأعمدة في جدول يتم تسجيلها باستخدام console.table().

console.time([label])

لبدء موقّت جديد يمكنك الاتصال بـ console.timeEnd([label]) لإيقاف الموقّت وعرض الوقت المنقضي على وحدة التحكم.

console.time();
for (var i = 0; i < 100000; i++) {
  let square = i ** 2;
}
console.timeEnd();

نتيجة مثال console.time() أعلاه.

console.timeEnd([label])

مستوى السجلّ: Info

لإيقاف موقّت. يمكنك الاطّلاع على console.time().

console.trace()

مستوى السجلّ: Info

تطبع عملية تتبُّع تسلسل استدعاء الدوال البرمجية في وحدة التحكّم.

const first = () => { second(); };
const second = () => { third(); };
const third = () => { fourth(); };
const fourth = () => { console.trace(); };
first();

نتيجة مثال console.trace() أعلاه.

console.warn(object [, object, ...])

مستوى السجلّ: Warning

يطبع تحذيرًا إلى وحدة التحكم.

console.warn('warn');

نتيجة المثال console.warn() أعلاه.