زوجان من أساليب الكائن Console مثيرة للاهتمام



يوم جيد يا اصدقاء!

في هذه الملاحظة القصيرة ، أريد أن أشارككم معلومات حول بعض أساليب كائن وحدة التحكم التي يمكن استخدامها مع console.log ().

يمكن الاطلاع على قائمة كاملة من الطرق هنا .

من الكلمات إلى العمل. نعم ، سيتم استخدام Chrome للعمل.

Console.debug () و console.info ()


يتم استخدام Console.debug () و console.info () لإخراج رسائل إعلامية إلى وحدة التحكم ، وفي الواقع ، هي نظائر console.log (). تتمثل إحدى ميزات console.debug () في أن الرسالة المعروضة بهذه الطريقة يتم عرضها فقط إذا تم تكوين وحدة التحكم لعرض رسائل مستوى تصحيح الأخطاء (بالنسبة إلى Chrome ، تحتوي خانة الاختيار Verbose على علامة تبويب المستويات).

لنقم بإنشاء بعض الكائنات:
const harry = { name: 'Harry', age: 28, married: false, job: 'developer', salary: 300, }, alice = { name: 'Alice', age: 23, married: false, job: 'manager', salary: 100, }, bob = { name: 'Bob', age: 32, married: true, job: 'tester', salary: 200 } 

أدرجهم في وحدة التحكم باستخدام console.log (هاري ، أليس ، بوب):


الآن ، باستخدام console.debug () ، توفير معلومات إضافية ("\ n" هو حرف التحكم لتغذية السطر ، والمساحة في البداية للمحاذاة):
 console.debug( ' The first employee is', harry.name, '\n The second employee is', alice.name, '\n The third employee is', bob.name ) 

نحصل على ما يلي:


أخيرًا ، باستخدام console.info () ، استخدام أحرف البدل ("٪ s" عبارة عن سلسلة ، "٪ d" عبارة عن رقم ، "٪ s" هو توجيه لتطبيق الأنماط):
 console.info(' This is %c%s%c. \n He\'s %d years old. \n He\'s %s. \n He works as %s. \n His salary is %d.', 'font-size: 1.2em; font-weight: 600; color: deepskyblue; text-decoration: underline;', harry.name, '', harry.age, harry.married ? 'married' : 'not married', harry.job, harry.salary) 

النتيجة (لاحظ "Harry" الذي لفناه في٪ c):


Console.count ()


يعرض Console.count () عدد استدعاءات الطريقة مع تسمية محددة (تم تمريرها في معلمة الطريقة). لإعادة تعيين العداد بالقيمة المحددة ، استخدم console.countReset ().

مثال معدّل قليلاً مع MDN:
 let user = '' function greet() { console.count(user) return 'hi ' + user } user = 'bob' greet() user = 'alice' greet() greet() console.count('alice') 

نرى ما يلي:


أنا شخصياً لم أتمكن من استخدام هذه الطريقة ، لكن الفرصة كانت مثيرة للاهتمام.

Console.group ()


يتم استخدام Console.group () لتجميع الرسائل (مع التحول الصحيح بمستوى واحد). يمكن إعطاء المجموعات أسماء. لإغلاق المجموعة ، استخدم console.groupEnd (). Console.groupCollapsed () يفعل نفس الشيء console.group () ، ولكن الإخراج في مجموعة صغيرة (نعمل مع الكائنات التي تم إنشاؤها سابقًا):
 console.groupCollapsed('harry') console.log(harry.name) console.log(harry.age) console.log(harry.married) console.log(harry.job) console.log(harry.salary) console.groupEnd() console.groupCollapsed('alice') console.log(alice.name) console.log(alice.age) console.log(alice.married) console.log(alice.job) console.log(alice.salary) console.groupEnd() console.groupCollapsed('bob') console.log(bob.name) console.log(bob.age) console.log(bob.married) console.log(bob.job) console.log(bob.salary) console.groupEnd() 

نحصل على:


Console.table ()


يعرض Console.table () البيانات في جدول.

إنشاء مجموعة من الكائنات:
 let staff = [{ name: 'Harry', age: 29, married: false, job: 'developer', salary: 'many', }, { name: 'Alice', age: 23, married: false, job: 'manager', salary: 'few' }, { name: 'Bob', age: 32, married: true, job: 'tester', salary: 'medium' } ] 

اشتقاقه باستخدام console.log (الاشياء):


ليس واضحا جدا ، توافق.

الآن تستخدم console.table (الأشياء):


مسألة مختلفة تماما.

الوقت Console.time ()


Console.time () يبدأ مؤقت مع الاسم من المعلمة التي تم تمريرها. تم إيقاف المؤقت باستخدام console.timeEnd (). لإصلاح القيم المتوسطة ، استخدم console.timeLog ():
 console.time('time') //    function fact(n) { return n ? n * fact(n - 1) : 1 } console.log(fact(12)) console.timeLog('time') //    function fib(n) { return n <= 1 ? n : fib(n - 1) + fib(n - 2) } console.log((fib(34))) // :      console.timeEnd('time') 

النتيجة:


Console.trace ()


يطبع Console.trace () تتبع مكدس. يمكن استخدامه لتحديد تسلسل استدعاءات الوظائف.

مثال معدّل قليلاً مع MDN:
 foo() function foo() { //  bar() } function bar() { //   baz() } function baz() { //    console.trace('stack traces:') } 

النتيجة:


نفسها لم تستخدم قط ، ولكن تدوين الملاحظات.

هذا كل شيء بالنسبة لي. كل التوفيق.

Source: https://habr.com/ru/post/ar484544/


All Articles