הפניית API של Console

קייס בסקית
קייס בסקית
סופיה אמליאנובה
סופיה אמליאנובה

כדי לכתוב הודעות למסוף מה-JavaScript, יש להשתמש בממשק ה-API של Console. מבוא אינטראקטיבי לנושא מופיע במאמר תחילת העבודה עם רישום הודעות במסוף.

אם מחפשים שיטות נוחות כמו debug(function) או monitorEvents(node), שזמינות רק במסוף, אפשר לעיין בחומר העזר בנושא ממשק ה-API של Console utilities.

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();

אם האפשרות שמירת יומן הרישום מופעלת, 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) מפעילה מטען ייעודי (payload) שרירותי ומעביר את הערך המוחזר חזרה למבצע הקריאה החוזרת.

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

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

הפונקציה task יוצרת קישור בין הקשר היצירה לבין ההקשר של הפונקציה האסינכרונית. הקישור הזה מאפשר לכלי הפיתוח להציג דוחות קריסות טובים יותר לפעולות אסינכרוניות. למידע נוסף, קראו את המאמר בנושא Linked Stack Traces.

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 ב-Play Console, מעצב אותו כשגיאה וכולל דוח קריסות.

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 [, columns])

רמת היומן: 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

מדפיס דוח קריסות ב-Play Console.

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() למעלה.