Jak zrzucić var JavaScript w IE8?
Mam obiekt, który muszę zbadać w IE8.
Próbowałem narzędzi programistycznych i console.log
, ich odpowiednika Firebug.
Jednak, gdy wypisuję obiekt do dziennika:
console.log("Element: ", element);
console.log(element);
I only get the string
LOG: Element: [object Object]
Zamiast klikalnego, sprawdzalnego zrzutu.
Czy możliwe jest zrzut obiektu do dziennika i zbadanie jego członków, jak w Firebug?
Nie mogę użyć domowej funkcji dump (), ponieważ element, który chcę zbadać, jest tak ogromny, że przeglądarka się na mnie zawiesi.
11 answers
Oto jedna technika, którą uznałem za pomocną:
- Otwórz pasek narzędzi programisty (naciśnij F12)
- Przejdź do zakładki "skrypt"
- Kliknij przycisk "Rozpocznij debugowanie"
- Następnie wpisz "debugger" w konsoli i naciśnij enter. To powinno wywołać punkt przerwania.
- Przejdź do zakładki" Obserwuj "
- Kliknij wiersz z napisem " Kliknij, aby dodać..."i wprowadź zmienną, którą chcesz zbadać. Należy pamiętać, że zmienna musi być dostępna globalnie.
- w tym momencie ty powinno być w stanie zbadać zmienną za pomocą drzewiastego interfejsu
- Po zakończeniu debugowania kliknij przycisk Kontynuuj (lub naciśnij F5)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-15 18:52:24
Trochę off topic (ponieważ nie będzie działać dla elementów DOM), ale uznałem, że przydatne jest użycie JSON.stringify (object ), aby uzyskać ciąg JSON dla obiektu, który jest dość czytelny.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-12-30 21:44:48
@Chris skomentował odpowiedź @ Andy z prostym rozwiązaniem: użyj console.dir(myObj)
, aby uzyskać wszystkie szczegóły wydrukowane w konsoli w IE. Dzięki Chris!
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-12-10 18:53:08
Jeśli masz do czynienia z paskudnym kodem i konsolą.log nie jest dostępny, spróbuj tego w konsoli:
out = []; for (i in your_object) { out.push(i) } out.join("\n")
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-08-02 11:57:42
Jedną z sugestii jest użycie Firebug-Lite : Otacza konsolę obj i widać wynik w IE jak w większości konsoli firebug. Mam nadzieję, że to pomoże.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-08-11 19:27:58
Dodaj ten Tag na swojej stronie:
<script type="text/javascript" src="https://getfirebug.com/firebug-lite-debug.js"></script>
I wszystko się uda.
Działa na moim systemie.
Uwaga: wypróbuj to rozwiązanie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-07-15 06:12:56
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-21 11:49:05
Wiem, że to naprawdę stare pytanie, ale właśnie szukałem odpowiedzi na to pytanie. Jeśli nie jest bezwzględnym wymogiem używania konsoli IE (co IMO nie jest zbyt dobre), możesz rozważyć użycie Firebug Lite (http://getfirebug.com/firebuglite). nie jest to idealne rozwiązanie i możesz nie chcieć wypychać tego skryptu do środowiska produkcyjnego, i nie jest tak w pełni funkcjonalny jak Firebug, ale jest całkiem dobry w szczypcie, gdy musisz dużo wokół z low-end przeglądarka jak IE.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-10-21 15:19:19
Trochę masywny, ale działa dla obiektów DOM:
console.log( testNode.outerHTML.replace(testNode.innerHTML,"") );
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-15 17:21:23
Zrzut go do istniejącego elementu HMTL
Zauważyłem, że IE 11 usuwa linie konsoli po 1027 znakach :-/ Kiedy miałem duży obiekt do zrzutu (12,000 znaków) wrzuciłem go do istniejącego elementu div-oder TextArea, skąd mogłem skopiować zawartość.
var str = JSON.stringify(myObject);
$('#existing-element').text(str); // jQuery or
document.querySelector("#existing-element").innerHTML = str; // native JavaScript
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-11-15 09:52:38
Konsola.log(element.toString ())..
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-12-24 02:46:47