Jakie jest zastosowanie console.log
?
Wyjaśnij, jak używać go w JavaScript, na przykładzie kodu.
javascript
firebug
console.log
Mihir
źródło
źródło
if (console.log)
(lub nawetif (console && console.log)
) nadal zgłasza błąd, jeśli konsola nie jest dostępna. Powinieneś użyćwindow.console
(jakwindow
na pewno istnieje) i sprawdzać tylko jeden poziom głębokości naraz.Miejsca, w których możesz zobaczyć konsolę! Wystarczy mieć je wszystkie w jednej odpowiedzi.
Firefox
http://getfirebug.com/
(możesz teraz także korzystać z wbudowanych narzędzi programistycznych Firefoksa Ctrl + Shift + J (Narzędzia> Web Developer> Konsola błędów), ale Firebug jest znacznie lepszy; użyj Firebug)
Safari i Chrome
Zasadniczo to samo.
https://developers.google.com/chrome-developer-tools/docs/overview
https://developer.apple.com/technologies/safari/developer-tools.html
Internet Explorer
Nie zapominaj, że możesz używać trybów zgodności do debugowania IE7 i IE8 w IE9 lub IE10
http://msdn.microsoft.com/en-us/library/ie/gg589507(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/dd565628(v=vs.85).aspx
Jeśli musisz uzyskać dostęp do konsoli w IE6 dla IE7, skorzystaj z bookmarkletu Firebug Lite
http://getfirebug.com/firebuglite/ szukaj stabilnego bookmarkletu
http://en.wikipedia.org/wiki/Bookmarklet
Opera
http://www.opera.com/dragonfly/
iOS
Działa na wszystkich iPhone'ach, iPodach touch i iPadach.
http://developer.apple.com/library/ios/ipad/#DOCUMENTATION/AppleApplications/Reference/SafariWebContent/DebuggingSafarioniPhoneContent/DebuggingSafarioniPhoneContent.html
Teraz z iOS 6 możesz przeglądać konsolę przez Safari w OS X, jeśli podłączysz urządzenie. Możesz to zrobić za pomocą emulatora, po prostu otwórz okno przeglądarki Safari i przejdź do karty „Opracuj”. Znajdziesz tam opcje umożliwiające inspektorowi Safari komunikację z urządzeniem.
Windows Phone, Android
Oba nie mają wbudowanej konsoli i nie mają możliwości tworzenia zakładek. Używamy więc http://jsconsole.com/ type: słuchaj, a otrzymasz skrypt do umieszczenia w kodzie HTML. Od tego momentu możesz wyświetlać swoją konsolę na stronie internetowej jsconsole.
iOS i Android
Możesz także użyć http://html.adobe.com/edge/inspect/, aby uzyskać dostęp do narzędzi inspektora sieci i konsoli na dowolnym urządzeniu za pomocą wygodnej wtyczki do przeglądarki.
Starsze problemy z przeglądarką
Wreszcie starsze wersje IE ulegną awarii, jeśli użyjesz konsoli.log w kodzie i nie otworzysz narzędzi programistycznych w tym samym czasie. Na szczęście jest to łatwa naprawa. Użyj poniższego fragmentu kodu u góry kodu:
To sprawdza, czy konsola jest obecna, a jeśli nie, ustawia ją na obiekt o nazwie pustej funkcji
log
. W ten sposób window.console i window.console.log nigdy nie są naprawdęundefined.
źródło
Możesz przeglądać wszelkie wiadomości zarejestrowane w konsoli, jeśli używasz narzędzia takiego jak Firebug do sprawdzania swojego kodu. Powiedzmy, że to robisz:
Gdy uzyskasz dostęp do konsoli w Firebug (lub innym narzędziu, które zdecydujesz się użyć do sprawdzenia kodu), zobaczysz każdą wiadomość, której funkcję chcesz zalogować. Jest to szczególnie przydatne, gdy chcesz sprawdzić, czy funkcja wykonuje się lub czy zmienna jest poprawnie przekazywana / przypisywana. Jest to w rzeczywistości dość cenne, aby dowiedzieć się, co poszło nie tak z twoim kodem.
źródło
Wyśle komunikat dziennika do konsoli javascript przeglądarki, np. Firebug lub Developer Tools (Chrome / Safari) i wyświetli wiersz i plik, z którego został wykonany.
Co więcej, kiedy wyślesz obiekt jQuery, będzie on zawierał odniesienie do tego elementu w DOM, a kliknięcie go spowoduje przejście do tego w zakładce Elements / HTML.
Możesz używać różnych metod, ale uwaga: aby działał w Firefoksie, musisz mieć otwartego Firebuga, w przeciwnym razie cała strona ulegnie awarii. Bez względu na to, czy logujesz się jako zmienna, tablica, obiekt lub element DOM, da ci to pełny podział, w tym również prototyp obiektu (zawsze interesujące jest, żebyś miał poke). Możesz także dołączyć dowolną liczbę argumentów, a zostaną one zastąpione spacjami.
Wyświetlają się one z różnymi logo dla każdego polecenia.
Możesz także użyć
console.profile(profileName);
do rozpoczęcia profilowania funkcji, skryptu itp. A następnie zakończyć ją,console.profileEnd(profileName);
a pojawi się ona na karcie Profile w Chrome (nie wiem w FF).Pełne odniesienie znajduje się na stronie http://getfirebug.com/logging i sugeruję, aby je przeczytać. (Ślady, grupy, profilowanie, kontrola obiektów).
Mam nadzieję że to pomoże!
źródło
console.log("x:", x)
lepszy niżconsole.log("x:" + x)
? Czy jest mniej podatny na błędy, ponieważ,
łatwiej jest odczytać niż+
?+
ściśle używany , ale chciałem pokazać, że możesz również używać przecinków w funkcjach konsoli. Ponadto pozwala uniknąć problemów, jeśli obie zmienne są liczbami całkowitymi lub tablicami.console.log("x:", x)
jest znacznie lepszy, ponieważ gdyx
jest obiektem lub tablicą (lub czymkolwiek innym niż ciąg znaków), wyświetla się poprawnie, bez konwersji na ciąg znaków.Z jQuery nie ma nic wspólnego, a jeśli chcesz go użyć, radzę ci to zrobić
Nie łamiesz więc kodu, gdy nie jest on dostępny.
Jak sugerowano w komentarzu, możesz również wykonać to w jednym miejscu, a następnie użyć
console.log
normalnieźródło
if(!window.console){ window.console = function(){}; }
w jednym miejscu, a następnie używać pliku console.log jak zwykle.console.log
nie ma nic wspólnego z jQuery. Jest to powszechny obiekt / metoda udostępniana przez debuggery (w tym debugger Chrome i Firebug), który pozwala skryptowi rejestrować dane (lub obiekty w większości przypadków) na konsoli JavaScript.źródło
console.log
loguje informacje debugowania do konsoli w niektórych przeglądarkach (Firefox z zainstalowanym Firebug, Chrome, IE8, cokolwiek z zainstalowanym Firebug Lite). W Firefoksie jest to bardzo potężne narzędzie, które pozwala sprawdzać obiekty lub badać układ lub inne właściwości elementów HTML. Nie jest to związane z jQuery, ale przy użyciu go z jQuery często wykonuje się dwie rzeczy:zainstaluj rozszerzenie FireQuery dla Firebug. To, między innymi, sprawia, że rejestrowanie obiektów jQuery wygląda ładniej.
stwórz opakowanie, które będzie bardziej zgodne z konwencjami kodu łańcuchowego jQuery.
Oznacza to zwykle coś takiego:
które możesz następnie wywołać jak
aby łatwo sprawdzić wewnątrz łańcuchów jQuery.
źródło
console.log
nie ma nic wspólnego z jQuery.Loguje komunikat do konsoli debugowania, takiej jak Firebug.
źródło
Niekiedy chodzi o zamieszanie, że aby zarejestrować wiadomość tekstową wraz z zawartością jednego z twoich obiektów za pomocą console.log, musisz przekazać każdy z nich jako inny argument. Oznacza to, że musisz je rozdzielić przecinkami, ponieważ jeśli użyjesz operatora + do połączenia danych wyjściowych, domyślnie wywołałoby to
.toString()
metodę twojego obiektu. W większości przypadków nie jest to jawnie nadpisywane, a domyślna implementacja dziedziczona przezObject
nie dostarcza żadnych użytecznych informacji.Przykład do wypróbowania w konsoli:
mając na uwadze, że jeśli spróbujesz połączyć informacyjną wiadomość tekstową z zawartością obiektu, otrzymasz:
Pamiętaj więc, że console.log w rzeczywistości bierze tyle argumentów, ile chcesz.
źródło
Służy
console.log
do dodawania informacji o debugowaniu do strony.Wiele osób korzysta
alert(hasNinjas)
z tego celu, aleconsole.log(hasNinjas)
łatwiej z nim pracować. Za pomocą wyskakujących okienek wyskakujące modalne okno dialogowe blokujące interfejs użytkownika.Edycja: Zgadzam się z Baptiste Pernet i Janem Hančičem , że bardzo dobrym pomysłem jest sprawdzenie, czy
window.console
jest zdefiniowane jako pierwsze, aby Twój kod się nie łamał , jeśli nie jest dostępna konsola.źródło
Przykład - załóżmy, że chcesz wiedzieć, który wiersz kodu byłeś w stanie uruchomić program (zanim się zepsuł!), Po prostu wpisz
źródło
Używasz go do debugowania kodu JavaScript za pomocą Firebug for Firefox lub konsoli JavaScript w przeglądarkach WebKit .
Wyświetli zawartość zmiennej, nawet jeśli jest to tablica lub obiekt.
Jest ona podobna do
print_r($var);
dla PHP .źródło
if (!window.console) { window.console = { log : function() {} }; }
. Pozwala to uniknąć zapomnienia o usuwaniu sporadycznych instrukcji debugowania.Uwaga: pozostawienie wywołań konsoli w kodzie produkcyjnym spowoduje uszkodzenie witryny w przeglądarce Internet Explorer. Nigdy nie przechowuj go w rozpakowaniu. Zobacz: https://web.archive.org/web/20150908041020/blog.patspam.com/2009/the-curse-of-consolelog
źródło
Na początku debugowanie JS odbywało się za pomocą
alert()
funkcji - teraz jest to przestarzała praktyka.console.log()
To funkcja, która pisze wiadomość do logowania na konsoli debugowania, takich jak Webkit lub Firebug. W przeglądarce nic nie widać na ekranie. Loguje komunikat do konsoli debugowania. Jest dostępny tylko w Firefoksie z Firebug oraz w przeglądarkach opartych na Webkit (Chrome i Safari). Nie działa dobrze we wszystkich wydaniach IE .Obiekt konsoli jest rozszerzeniem DOM.
console.log()
Powinny być stosowane tylko w kodzie w czasie rozwoju i debugowania.Uznaje się za złą praktykę, że ktoś pozostawia
console.log()
w pliku javascript na serwerze produkcyjnym.źródło
Jeśli Twoja przeglądarka obsługuje debugowanie, możesz użyć metody console.log () do wyświetlenia wartości JavaScript.
Aktywuj debugowanie w przeglądarce za pomocą F12 i wybierz „Console” w menu debuggera.
Konsola w JavaScript. Spróbuj naprawić lub „debugować” niedziałający program JavaScript i poćwicz korzystanie z komendy console.log (). Istnieją skróty, które pomogą Ci uzyskać dostęp do konsoli JavaScript, w zależności od używanej przeglądarki:
Skróty klawiaturowe konsoli Chrome
Windows: Ctrl+ Shift+ J
Mac: Cmd+ Option+J
Skróty klawiaturowe konsoli Firefox
Windows: Ctrl+ Shift+ K
Mac: Cmd+ Option+K
Skróty klawiaturowe konsoli Internet Explorer
F12 klucz
Skróty klawiaturowe w konsoli Safari
Cmd+ Option+C
źródło
console.log
w szczególności jest to metoda dla programistów do pisania kodu w celu niepozornego informowania programistów o tym, co robi kod. Można go użyć do ostrzeżenia o problemie, ale nie powinien zastępować interaktywnego debugera, gdy przychodzi czas na debugowanie kodu. Jego asynchroniczny charakter oznacza, że zarejestrowane wartości niekoniecznie reprezentują wartość w momencie wywołania metody.W skrócie: rejestruj błędy za pomocą
console.log
(jeśli są dostępne), a następnie napraw je za pomocą wybranego debuggera: Firebug , WebKit Developer Tools (wbudowany w Safari i Chrome ), IE Developer Tools lub Visual Studio.źródło
Naprawdę czuję, że programowanie sieciowe jest łatwe, kiedy zaczynam
console.log
debugować.Jeśli chcę sprawdzić wartość
i
środowiska wykonawczego ..możesz sprawdzić bieżącą wartość
i
w zakładce konsoli firebug. Jest specjalnie używany do debugowania.źródło
Służy do logowania (cokolwiek przekażesz) do konsoli Firebug . Głównym zastosowaniem byłoby debugowanie kodu JavaScript.
źródło
Oprócz wyżej wymienionych zastosowań
console.log
można również drukować na terminalu wnode.js
. Serwer utworzony za pomocą ekspresu (np.) Może użyćconsole.log
do zapisu do wyjściowego pliku rejestratora.źródło
W skryptach Java nie ma funkcji wejścia i wyjścia. Aby debugować kod, użyto metody console.log (). Jest to metoda rejestrowania. Zostanie wydrukowany w dzienniku konsoli (narzędzia programistyczne).
Nie jest obecny w IE8 i poniżej, dopóki nie otworzysz narzędzia programistycznego IE.
źródło
To nie ma nic wspólnego z jQuery.
console.log()
Odwołuje się do funkcji logarytmicznej obiektu konsoli, która przedstawia sposoby rejestrowania informacji do konsoli przeglądarki. Metody te są przeznaczone wyłącznie do celów debugowania i nie należy polegać na prezentowaniu informacji użytkownikom końcowym.źródło