لتصحيح برامج JavaScript ، يعد استخدام Console.log () طريقة أفضل من التنبيه () ، لأن: وظيفة التنبيه () ستحظر تنفيذ برامج JavaScript ، مما يسبب الآثار الجانبية ؛ على الرغم من أن console.log () يطبع فقط المعلومات ذات الصلة في وحدة التحكم ، لذلك لن يسبب مخاوف مماثلة.
ما هو console.log ()؟
باستثناء بعض الإصدارات القديمة للغاية من المتصفحات ، فإن معظم المتصفحات في الوقت الحاضر تأتي مع وظائف تصحيح الأخطاء ؛ حتى لو لم تكن هناك وظيفة تصحيح الأخطاء ، فيمكن استكمالها عن طريق تثبيت المكونات الإضافية. على سبيل المثال ، لا يأتي الإصدار القديم من Firefox مع أدوات تصحيح الأخطاء. في هذه الحالة ، يمكنك إضافة وظائف تصحيح الأخطاء عن طريق تثبيت Firebug Plug. في متصفح مع وظيفة تصحيح الأخطاء ، سيتم تسجيل متغير الأعضاء المسماة وحدة التحكم في كائن النافذة ، في إشارة إلى وحدة التحكم في أداة التصحيح. من خلال استدعاء وظيفة log () لكائن وحدة التحكم ، يمكنك طباعة المعلومات في وحدة التحكم. على سبيل المثال ، سوف يقوم الرمز التالي بطباعة "نموذج السجل" في وحدة التحكم:
نسخة الكود كما يلي:
window.console.log ("عينة سجل") ؛
يمكن أن يتجاهل الكود أعلاه كائن النافذة ويختصر بشكل مباشر على النحو التالي:
نسخة الكود كما يلي:
console.log ("عينة سجل") ؛
Console.log () يمكن أن تقبل أي سلسلة ورقم وجافا سكريبت. على غرار وظيفة ALERT () ، يمكن لـ Console.log () أيضًا قبول الأحرف الجديدة/N و TAB/T.
يمكن رؤية معلومات التصحيح المطبوعة في بيان Console.log () في وحدة التحكم في التصحيح في المتصفح. للحصول على طرق عرض محددة في كل متصفح ، يرجى الرجوع إلى صفحة الويب التالية:
http://stackoverflow.com/questions/4743730/what-is-console-log-and-how-do-use-it
قد يختلف سلوك Console.log () في متصفحات مختلفة. تناقش هذه المقالة بشكل أساسي استخدام Console.log () في Firebug.
متوافق مع المستعرضات بدون وحدة تحكم تصحيح
بالنسبة للمتصفحات القديمة التي تفتقر إلى وحدة التحكم في التصحيح ، فإن كائن وحدة التحكم في النافذة غير موجود ، لذا فإن استخدام عبارة Console.log () قد يتسبب بشكل مباشر في أخطاء (أخطاء مؤشر خالية) داخل المتصفح وتسبب في نهاية المطاف في بعض المتصفحات القديمة. لحل هذه المشكلة ، يمكنك تحديد كائن وحدة التحكم يدويًا وإعلان أن وظيفة السجل لكائن وحدة التحكم هي وظيفة فارغة ؛ بهذه الطريقة ، عند تنفيذ بيان console.log () ، فإن هذه الإصدارات القديمة من المتصفحات لن تفعل أي شيء:
نسخة الكود كما يلي:
if (! window.console) {
window.console = {log: function () {}} ؛
}
ومع ذلك ، في معظم الحالات ، ليست هناك حاجة للقيام بهذا العمل التوافق - يجب إزالة رمز التصحيح مثل console.log () من رمز المنتج النهائي.
معلمات الاستخدام
على غرار وظيفة التنبيه () ، يمكن أن تقبل console.log () المتغيرات وربطها مع سلاسل أخرى:
نسخة الكود كما يلي:
// استخدام المتغير
var name = "bob" ؛
console.log ("الاسم هو:" + اسم) ؛
على عكس وظيفة التنبيه () ، يمكن أن تقبل console.log () المتغيرات كمعلمات للانتقال إلى سلاسل ، وبناء بناء الجملة الخاص به يتوافق مع بناء جملة printf باللغة c:
نسخة الكود كما يلي:
// استخدام المعلمة
var people = "Alex" ؛
var years = 42 ؛
console.log ("٪ s هو ٪ d سنوات." ، الناس ، سنوات) ؛
نتيجة التنفيذ للرمز أعلاه هي: "أليكس يبلغ من العمر 42 عامًا".
استخدم مستويات السجل الأخرى
بالإضافة إلى Console.log () ، يدعم Firebug أيضًا مجموعة متنوعة من مستويات السجل المختلفة: Debug ، Info ، تحذير ، خطأ. سيقوم الرمز التالي بطباعة مستويات السجل المختلفة هذه في وحدة التحكم:
نسخة الكود كما يلي:
// استخدم مستوى تسجيل مختلف
console.log ("مستوى السجل") ؛
console.debug ("Debug Level") ؛
console.info ("مستوى المعلومات") ؛
console.Warn ("مستوى تحذير") ؛
console.error ("مستوى الخطأ") ؛
من وحدة التحكم Firebug ، يمكنك أن ترى أن ألوان وأيقونات طباعة معلومات الطباعة في مستويات سجل مختلفة مختلفة ؛ في الوقت نفسه ، يمكنك تحديد مستويات سجل مختلفة في وحدة التحكم لتصفية هذه المعلومات: