Befehle zum Arbeiten mit der JavaScript-Konsole in Browsern und zur Steigerung der Produktivität des Programmierers

Wenn Sie sich mit Webprogrammierung beschäftigen, bedeutet dies, dass Sie nicht darüber sprechen müssen, wie wichtig das Debuggen in Ihrer Arbeit ist. Häufig werden externe Bibliotheken verwendet, um Daten in Protokolle zu schreiben, zu formatieren oder auf dem Bildschirm anzuzeigen, ohne die Tatsache zu berücksichtigen, dass Programmierer über JavaScript-Befehle für die Arbeit mit in Browsern integrierten Konsolen verfügen. Und diese Konsolen verfügen über viel ernstere Funktionen, als es auf den ersten Blick erscheinen mag.

Bild

Vielleicht ist das erste, console.log() viele Leute denken, wenn sie "console" sagen, der Befehl console.log() . Sie ist jedoch nur eines von vielen solcher Teams. Das Material, dessen Übersetzung wir heute veröffentlichen, ist den Funktionen der Arbeit mit der JavaScript-Konsole gewidmet.

Was ist eine Konsole?


Die JavaScript-Konsole ist ein in moderne Browser integrierter Mechanismus, der integrierte Entwicklungstools in einer Befehlszeilenschnittstelle unterstützt. Über die Konsole kann ein Entwickler Folgendes tun:

  • Zeigen Sie Protokolle von Fehlern und Warnungen an, die auf einer Webseite auftreten.
  • Interagieren Sie mit einer Webseite mithilfe von JavaScript-Befehlen.
  • Debuggen Sie Anwendungen und arbeiten Sie mit dem DOM direkt über den Browser.
  • Untersuchen und analysieren Sie die Netzwerkaktivität.

Im Allgemeinen bietet die Konsole dem Entwickler die Möglichkeit, JavaScript-Code direkt in den Browser zu schreiben, die Vorgänge auf den Seiten zu überwachen und diese Prozesse zu verwalten.

Methoden console.log, console.error, console.warn und console.info


Die wahrscheinlich am häufigsten verwendeten Methoden bei der Arbeit mit der Konsole sind console.log() , console.error() , console.warn() und console.info() . Sie können diesen Methoden einen oder mehrere Parameter übergeben. Das System berechnet den Wert jedes einzelnen von ihnen und kombiniert alle Ergebnisse zu einer Zeichenfolge, deren Teile durch Leerzeichen getrennt sind. Bei Objekten oder Arrays können Sie diese Befehle in einer Form anzeigen, in der Sie deren Inhalt anzeigen können. So sieht es aus.


Verwenden verschiedener Befehle zum Ausgeben von Daten an die Konsole

Console.group-Methode


Mit der Methode console.group() können Sie eine Reihe von Aufrufen von console.log() (sowie anderen ähnlichen Methoden) in Gruppen zusammenfassen, deren Inhalt console.log() und erweitert werden kann. Die Verwendung dieser Methode ist sehr einfach: Nach dem Aufruf von console.group() (oder nach console.groupCollapsed() , wenn Sie die Gruppe sofort minimiert anzeigen möchten) müssen Sie alle Aufrufe von console.log() , die gruppiert werden müssen. Am Ende des Befehlssatzes, den Sie console.groupEnd() möchten, müssen Sie den Befehl console.groupEnd() . Betrachten Sie ein Beispiel.

 function doSomething(obj){   console.group('doSomething Profile');   const _data = new Date();   console.log('evaluating data: ', _data);   const _fullName = `${obj.firstName} ${obj.lastName}`;   console.log('fullName: ', _fullName);   const _id = Math.random(1);   console.log('id: ', _id);   console.groupEnd(); } doSomething({"firstName":"Riccardo", "lastName":"Canella"}); 

Nach der Ausführung dieses Codefragments gelangt Folgendes zur Konsole.


Gruppieren von Daten in der Konsole mit der Methode console.group ()

Console.table-Methode


Nachdem ich von der Existenz der console.table() -Methode console.table() , hat sich mein Leben für immer verändert. Die Verwendung des regulären console.log() zur Ausgabe von JSON-Code oder großen JSON-Arrays ist beispielsweise ein Albtraum. Mit der Methode console.table() können Sie komplexe Datenstrukturen in schönen Tabellen anzeigen, deren Spalten durch Übergabe als Parameter benannt werden können (nicht alle Browser unterstützen diese Funktion console.table() ). Hier ist ein Beispiel für die Arbeit mit diesem Team.

 const typeOfConsole = [   {name:'log', type:'standard'},   {name:'info', type:'standard'},   {name:'table', type:'wow'} ]; console.table(typeOfConsole); const mySocial = {   facebook: true,   linkedin: true,   flickr: true,   instagram: true,   VKontaktebadoo: false }; console.table(mySocial, ["Socials", "I'v an account"]); 

Was passiert ist und gut aussieht und das Debuggen erleichtern kann.


Tabellarisieren Sie die Ausgabe mit console.table ()

Methoden console.count, console.time und console.timeEnd


Die console.count() , console.time() und console.timeEnd() können für Entwickler, die sich mit dem Debuggen von Anwendungen console.timeEnd() , als Schweizer Messer bezeichnet werden. Mit der Methode console.count() können Sie also die Anzahl Ihrer eigenen Anrufe zählen und in der Konsole mit der angegebenen Bezeichnung anzeigen. Mit der console.time() -Methode können Sie einen benannten Timer ausführen (der Name wird als Parameter an ihn übergeben, bis zu 10.000 Timer können auf einer Seite vorhanden sein). Um einen bestimmten Timer zu stoppen, wird der Befehl console.timeEnd() mit der als Parameter übergebenen Timer-Bezeichnung verwendet. Sie stoppt den Timer und zeigt die Zeit seiner Arbeit in der Konsole an. Hier erfahren Sie, wie Sie diese Methoden verwenden.

 console.time('total'); console.time('init arr'); const arr = new Array(20); console.timeEnd('init arr'); for(var i = 0; i < arr.length; i++){   arr[i] = new Object();   const _type = (i % 2 === 0) ? 'even' : 'odd';   console.count(_type+'added'); } console.timeEnd('total'); 

Und hier ist das Ergebnis der Arbeit dieses Codes in der Konsole.


Verwenden der Methoden console.count (), console.time () und console.timeEnd ()

Methoden Console.trace und console.assert


Mit den console.trace() und console.assert() können Sie console.assert() an der Stelle ausgeben, an der sie aufgerufen wurden. Stellen Sie sich vor, Sie entwickeln eine JS-Bibliothek und möchten dem Benutzer mitteilen, wo der Fehler aufgetreten ist. In einem solchen Fall können diese Methoden sehr nützlich sein. Die Methode console.assert() ähnelt console.trace() . Der Unterschied zwischen beiden besteht darin, dass console.assert() nur dann Daten ausgibt, wenn die an sie übergebene Bedingung nicht erfüllt ist. Hier erfahren Sie, wie Sie mit diesen Methoden arbeiten.

 function lesserThan(a,b){   console.assert(a<b, {       "message":"a is not lesser than b",       "a": a,       "b": b   }); } lesserThan(6,5); console.trace("End"); 

Es ist leicht zu bemerken, dass die von diesem Code generierte Ausgabe genauso aussieht wie in React (oder einer anderen Bibliothek), wenn das Framework eine Ausnahme meldet.


Das Ergebnis der Verwendung der Befehle console.assert () und console.trace ()

Befehle zum Arbeiten mit der Konsole und dem Produktionscode


Befehle für die Arbeit mit der Konsole werden in der Phase der Entwicklung und des Debuggens von Anwendungen benötigt. Dies bedeutet, dass diese Befehle zum Zeitpunkt der Veröffentlichung des Produkts aus dem Code entfernt werden müssen. Sie können es einfach vergessen und einige Zeit nach dem Zusammenstellen der Produktionsversion des Projekts feststellen, dass das Programm etwas in die Konsole schreibt, wenn es nicht benötigt wird. Laden Sie keine Computer mit unnötiger Arbeit, auch wenn diese scheinbar unbedeutend ist wie die Ausgabe von Daten an die Konsole. Angesichts der Tatsache, dass Befehle für die Arbeit mit der Konsole während der Entwicklung der Anwendung nützlich sein können, ist es gleichzeitig am besten, sie nicht dauerhaft aus dem Programmquellcode zu löschen, sondern nur aus der Produktionsversion zu entfernen. Hier helfen uns Mittel für die Zusammenstellung von Projekten. Daher verwende ich Webpack ständig, sowohl bei der Arbeit als auch in meinen eigenen Projekten. Mit diesem Tool können Sie alle unnötigen Befehle für die Arbeit mit der Konsole (es kann sie von anderen Befehlen unterscheiden) mit dem uglifyjs-webpack-Plugin aus Produktionsassemblys entfernen .

 const UglifyJsPlugin = require('uglifyjs-webpack-plugin') var debug = process.env.NODE_ENV !== "production"; ..... optimization: {       minimizer: !debug ? [           new UglifyJsPlugin({               //                 uglifyOptions: {                   //                     comments: false,                   compress: {                      //                        warnings: false,                      //                            drop_console: true                   },               }          })] : [] } 

Diese Konfiguration ist sehr einfach, erleichtert jedoch die tägliche Arbeit des Programmierers und beseitigt das Problem vergessener Konsolenbefehle.

Zusammenfassung


In diesem Artikel haben wir einige nützliche Befehle für die Arbeit mit der Konsole besprochen. Mit Tools, die Teil moderner Browser sind, können sie viele Probleme lösen, die mit der Entwicklung und dem Debuggen clientseitiger JavaScript-Anwendungen einhergehen.

Liebe Leser! Welche Befehle für die Arbeit mit der JavaScript-Konsole verwenden Sie?

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


All Articles