JavaScript – Conectați-vă la consolă (console.log vs. frameworks)

  • Home
  • Uncategorized
  • JavaScript – Conectați-vă la consolă (console.log vs. frameworks)
JavaScript – Conectați-vă la consolă (console.log vs. frameworks)

JavaScript – Conectați-vă la consolă (console.log vs. cadre)

Dezvoltatorii trebuie să știe ce face codul lor în timp ce rulează JavaScript, fie în browser, fie în mediul NodeJS. Astfel de informații pot ajuta la verificarea codului, la găsirea erorilor sau la măsurarea performanței. Imprimarea datelor prin consolă este cea mai simplă modalitate de a face asta.

În acest articol, vom discuta despre conectarea la consola browserului utilizând metoda console.log() și despre logarea utilizând cadre și biblioteci populare.

De bază: Conectarea la consola browser utilizând console.log()

Pe partea client sau în browser, puteți utiliza console.log() pentru a înregistra orice date din JavaScript.

Folosind console.log() în Javascript sau în Browser

Apăsați tasta F12 pentru a deschide consola browserului. Asigurați-vă că fila „Consolă” este selectată, apoi puteți copia și lipi aceste exemple direct în linia de comandă a consolei:

console.log(‘foo’); // șir console.log( ‘valoare foo: ‘, 100 ); // șir cu o valoare console.log( ‘foo’, ‘bar’, ‘baz’ ); // mai multe șiruri console.log( { nume: „Simon”, id: 5 } ); // obiect console.log( [ 1, 2, 3 ], [ ‘a’, ‘b’, ‘c’ ] ); // mai multe matrice console.log( new Date() ); // Data

Un exemplu de utilizare a substituției șirurilor

Puteți utiliza, de asemenea, înlocuirea șirurilor, care este utilă în special cu buclele de cod.

var contacte = [ { nume: „Simon”, id: 5, vârsta: 25 }, { nume: „Ben”, id: 7, vârsta: 54 }, { nume: „Lisa”, id: 9, vârsta: 32 } ]; pentru (var i=0; i

Care va scoate:

Nume: Simon, Vârsta: 25. Nume: Ben, Vârsta: 54. Nume: Lisa, Vârsta: 32.

Intermediar: Alte funcții utile de înregistrare în consolă

Există câteva alte metode similare cu console.log() , dar toate rezultatele lor vizuale diferă ușor:

console.info() și console.warn()

console.info(„Iată un text informativ pentru a vă anunța ce se întâmplă.”); console.warn(„Nu ai făcut ceva groaznic, dar poate vrei să verifici?”);

Sfat NodeJS: când luați în considerare aceste metode, rețineți că, în mediul NodeJS, console.error și console.warn vor scoate la stderr în loc de stdout . Există, de asemenea, multe biblioteci de jurnalizare colorate, care pot ajuta la îmbunătățirea lizibilității ieșirii în jurnal în NodeJS.

console.table()

Dacă trebuie să scoateți o mulțime de date tabulare, metoda de înregistrare console.table() este utilă; cu toate acestea, în prezent nu este acceptat de anumite browsere, inclusiv Internet Explorer, Opera și Safari.

console.table( [ { nume: „Simon”, id: 5, vârstă: 25 }, { nume: „Ben”, id: 7, vârstă: 54 }, { nume: „Lisa”, id: 9, vârstă: 32 } ]);

Ieșirea arată astfel:

Alte Metode

Iată câteva alte comenzi de înregistrare, mai ezoterice, pe care le puteți citi:

  • console.assert()
  • console.trace()
  • console.time()

Când doriți să înregistrați erori folosind consola NodeJS, puteți utiliza console.error() , în loc de console.log() . În acest fel, erorile pot fi redirecționate în procesul shell către stdout , stderr și/sau un fișier jurnal . Înregistrarea non-erorilor se poate face prin direcționarea console.log() către stdout .

Intrare/Ieșire Shell → redirecționează 1> către stdout și 2> către stderr .

Un exemplu de cum să redirecționați ieșirea în NodeJS

console.log(‘Acesta este doar chestii de depanare zgomotoase’); console.error(‘Asta înseamnă că cineva a spart ceva din nou’);

Putem redirecționa atât ieșirea ( stdout ) cât și erorile ( stderr ) către fișiere diferite:

node test.js > out.log 2 > err.log

De asemenea, am putea redirecționa atât rezultatul, cât și erorile către același fișier:

nod test.js > everything.log 2>&1

Avansat: Utilizarea cadrelor și a bibliotecilor pentru a vă conecta la consolă

Pentru o soluție de logare mai avansată în browser, log4javascript poate fi util. Pentru scopuri mai serioase de înregistrare NodeJS, poate fi bine să utilizați o bibliotecă de înregistrare bine testată, cum ar fi

Winston, Node-Bunyan sau Tracer.

Conectarea la consola browser folosind JS Framework: log4javascript

Acesta este un cadru de jurnalizare JS cu un API bazat pe populara bibliotecă de jurnalizare Java log4j.

Principalele caracteristici ale log4javascript:

  • În mod implicit, se conectează la o fereastră de consolă pop-up cu funcții puternice de căutare (inclusiv expresii regulate) și filtrare. Fereastra poate fi folosită și ca iframe inline pe pagină.
  • Mesajele de jurnal pot fi trimise către server prin HTTP (sau AJAX, dacă doriți).
  • Este foarte configurabil folosind metode familiare de la log4j, inclusiv PatternLayout, care oferă dezvoltatorului control complet asupra formatului mesajelor de jurnal.

Iată o versiune ușoară a log4javascript (suportă un subset de bază al caracteristicilor originale).

Conectarea la Consola NodeJS folosind o bibliotecă: Winston, Node-Bunyan și Tracer

În funcție de contextul procesului, natura asincronă a înregistrării poate duce la pierderea mesajelor de jurnal dacă nu este tratată corespunzător. Aici bibliotecile de jurnalizare pentru NodeJS devin destul de utile.

1. Biblioteca Winston

Cea mai populară bibliotecă de înregistrare NodeJS pare să fie Winston, care este concepută pentru a fi simplă și universală. Winston acceptă transporturi asincrone (sau dispozitive de stocare pentru jurnalele dvs.), astfel încât fiecare instanță poate avea mai multe transporturi configurate la diferite niveluri. De exemplu, puteți avea jurnalele de erori stocate în mod constant într-o locație la distanță (cum ar fi o bază de date), dar toate jurnalele sunt trimise în consolă sau într-un fișier local.

2. Biblioteca Node-Bunyan

Biblioteca Node-Bunyan oferă un modul de înregistrare JSON simplu și rapid pentru NodeJS. Ideea acestei biblioteci este că jurnalele de server ar trebui să fie structurate și că JSON este un format bun pentru asta. O înregistrare de jurnal este o linie de ieșire JSON.stringify() . Există, de asemenea, un instrument special de linie de comandă pentru tipărirea și filtrarea jurnalelor Bunyan.

3. Biblioteca Tracer

Tracer este o bibliotecă personalizabilă de jurnalizare NodeJS care poate tipări mesaje de jurnal cu un marcaj de timp, nume de fișier, nume de metodă, număr de linie, cale sau stivă de apeluri. Tracer are, de asemenea, suport pentru niveluri de înregistrare definite de utilizator, șabloane de ieșire personalizate, alte transporturi și ieșiri colorate.

Dezvăluirea agentului de publicitate

Gazduirweb este o resursă online gratuită care oferă utilizatorilor conținut valoros și servicii de comparare. Pentru a menține această resursă 100% gratuită, primim compensații de la multe dintre ofertele afișate pe site. Alături de factorii cheie de revizuire, această compensație poate afecta modul în care și locul în care apar produsele pe site (inclusiv, de exemplu, ordinea în care apar). Gazduirweb nu include întregul univers al ofertelor disponibile. Opiniile editoriale exprimate pe site sunt strict ale noastre și nu sunt furnizate, susținute sau aprobate de agenții de publicitate.

Politica noastră de revizuire editorială

Site-ul nostru se angajează să publice conținut independent, precis, ghidat de reguli editoriale stricte. Înainte ca articolele și recenziile să fie publicate pe site-ul nostru, acestea sunt supuse unui proces amănunțit de revizuire efectuat de o echipă de editori independenți și experți în materie pentru a asigura acuratețea, actualitatea și imparțialitatea conținutului. Echipa noastră editorială este separată și independentă de agenții de publicitate ai site-ului nostru, iar opiniile pe care le exprimă pe site-ul nostru sunt proprii. Pentru a citi mai multe despre membrii echipei noastre și despre mediul lor editorial, vă rugăm să vizitați pagina Despre a site-ului nostru.

Leave a Reply

Copyright © 1999 - 2022 Phox Operating Company