wyczyść konsolę javascript w Google Chrome

215

Zastanawiałem się, czy mogę wyczyścić konsolę za pomocą jakiegoś polecenia ...

console.log(), można wydrukować ... czy istnieje polecenie wyczyszczenia konsoli? ..

Próbowałem console.log(console);i mam te funkcje poniżej ...

assert: function assert() { [native code] }
constructor: function Console() { [native code] }
count: function count() { [native code] }
debug: function debug() { [native code] }
dir: function dir() { [native code] }
dirxml: function dirxml() { [native code] }
error: function error() { [native code] }
group: function group() { [native code] }
groupEnd: function groupEnd() { [native code] }
info: function info() { [native code] }
log: function log() { [native code] }
markTimeline: function markTimeline() { [native code] }
profile: function profile() { [native code] }
profileEnd: function profileEnd() { [native code] }
time: function time() { [native code] }
timeEnd: function timeEnd() { [native code] }
trace: function trace() { [native code] }
warn: function warn() { [native code] }
__proto__: Object

[Chyba nie ma sposobu na wyczyszczenie konsoli ... ale chciałem, żeby ktoś mi to powiedział ...]

Reigel
źródło

Odpowiedzi:

310

Aktualizacja: od 6 listopada 2012 r. console.clear()Jest już dostępna w Chrome Canary.


Jeśli wpiszesz clear()w konsoli, wyczyści to.

Nie sądzę, że istnieje sposób programowo to zrobić, ponieważ można go niewłaściwie wykorzystać. (konsola jest czyszczona przez niektóre strony internetowe, użytkownik końcowy nie ma dostępu do informacji o błędach)

jedno możliwe obejście:

w typie konsoli window.clear = clearbędziesz mógł użyć wyczyść w dowolnym skrypcie na swojej stronie.

cobbal
źródło
3
duh ... funkcja javascript jest clear()... to to samo.
chakrit
1
Możliwy scenariusz, w którym byłoby to irytujące: pewna osoba rozwija stronę internetową, używając komendy clear i przechodzi do kodu produkcyjnego. Przechodzisz do strony i coś się psuje. Nie możesz dowiedzieć się, dlaczego skoro konsola została wyczyszczona przez stronę.
cobbal
38
console.clear () jest teraz dostępna w Chrome. Wypróbuj w Canary.
Paul Irish,
23
Możesz po prostu nacisnąć CTRL + L, gdy kursor jest skupiony w konsoli. Wszystkie dane wyjściowe konsoli zostaną wyczyszczone.
Lido
17
Uwaga: clear()nie działa, jeśli zaznaczyłeś „Zachowaj dziennik podczas nawigacji”.
beatgammit
130

Zawsze jest dobra stara sztuczka:

console.log("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");

lub krótsza odmiana powyższego:

console.log('\n'.repeat('25'));

Nie jest to najbardziej eleganckie rozwiązanie, wiem :) ... ale działa.

Dla mnie zwykle po prostu drukuję długą linię separatora „-----”, aby ułatwić czytanie dzienników.

czakryt
źródło
109
Kiedy nie możesz użyć skalpela, użyj siekiery. +1
mVChr
41
console.log(new Array(24 + 1).join('\n')robi to samo, ale jest znacznie krótszy. :)
nyuszika7h
15
@ Nyuszika7H Jeśli jesteś po zwięzłości: console.log(Array(25).join('\n')). Wywołanie Arraykonstruktora bez newoperatora zwróci tablicę.
alex
2
Niezłe sugestie. Przygotowuję prezentację internetową na konsoli.info jako „notatki prezentera” (zgodnie z radą Christiana ) i tak właśnie wymyśliłem, na wypadek, gdyby nie pamiętałem, aby przypisać window.alert: var hasClear = (typeof clear == 'function'); if(hasClear) clear(); console.info('bla'); if(!hasClear) console.log(Array(18).join('\n'));
Ronny
1
Zdecydowałbym się na ciąg zakodowany na stałe, ponieważ jest to kod bardziej czytelny. Możesz patrzeć na to przez 1 sekundę i dokładnie wiedzieć, co robi. Wydaje mi się, że jest też wzrost wydajności.
Kevin Wheeler,
39

To wydaje się działać dobrze:

console.clear();
RealWorldCoder
źródło
20

Jeśli używasz console.clear(), wydaje się, że działa w chrome. Uwaga: wyświetli komunikat „Konsola została wyczyszczona”.

Przetestowałem to, gromadząc mnóstwo błędów JavaScript.

Uwaga: zaraz po wyczyszczeniu konsoli pojawił się błąd, więc nie wyłącza konsoli, tylko ją usuwa. Próbowałem tego tylko w chrome, więc nie wiem, jak to jest w różnych przeglądarkach.

EDYCJA: Testowałem to w Chrome, IE, Firefox i Opera. Działa w domyślnych konsolach Chrome, MSIE i Opera, ale nie w Firefoksie, jednak działa w Firebug.

Ben
źródło
To jest jedyna propozycja, która zadziałała dla mnie. Chrom.
Jamie Hartnoll,
17

Przycisk Wyczyść konsolę Chrome

Jeśli chcesz po prostu wyczyścić konsolę podczas debugowania, możesz po prostu kliknąć przycisk „koło zakazu” , aby wyczyścić konsolę.log.

Możesz też nacisnąć „Ctrl + L” aby wyczyścić konsolę za pomocą klawiatury.

Dean Meehan
źródło
13

Chrom:

console._commandLineAPI.clear();

Safari:

console._inspectorCommandLineAPI.clear();

Możesz utworzyć własną zmienną, która działa zarówno:

if (typeof console._commandLineAPI !== 'undefined') {
    console.API = console._commandLineAPI;
} else if (typeof console._inspectorCommandLineAPI !== 'undefined') {
    console.API = console._inspectorCommandLineAPI;
} else if (typeof console.clear !== 'undefined') {
    console.API = console;
}

Następnie możesz po prostu użyć console.API.clear().

nyuszika7h
źródło
5
Działa to tylko przez samą konsolę w Chrome, w którym to przypadku możesz po prostu zrobić to po clear()wyjęciu z pudełka.
pimvdb,
10

możesz użyć

console.clear();

jeśli pracujesz z kodowaniem javascript.

w przeciwnym razie możesz użyć CTR+Ldo wyczyszczenia edytora cosole.

Avinash Raut
źródło
9

Press CTRL+LSkrót, aby wyczyścić log, nawet jeśli zaznaczyłeś Preserve logopcję.
Mam nadzieję że to pomoże.

AbhiNickz
źródło
1
Używany clear()przez tak długi czas, ale nigdy nie myślałem o użyciu znanego skrótu Bash. :) Dzięki!
iamdanchiv
7

Na Macu możesz także używać ⌘+Ktak jak w Terminalu.


źródło
jest to najbardziej przydatne / praktyczne rozwiązanie thead. dzięki! :)
Mg Gm
5
console._inspectorCommandLineAPI.clear()

To działa

ED
źródło
2
Uncaught TypeError: Cannot call method 'clear' of undefined
Reigel
4

Na konsoli Chrome kliknij prawym przyciskiem myszy, a my mamy opcję wyczyszczenia konsoli

Bhanu Kalyan
źródło
4

Używam następujących aliasów clspodczas lokalnego debugowania w Chrome (wpisz następujący kod JavaScript w konsoli):

Object.defineProperty(window, 'cls', {
    get: function () {
        return console.clear();
    }
});

teraz wejście clsdo konsoli wyczyści konsolę.

cookch10msu
źródło
4

Przydatna kompilacja wielu odpowiedzi do programowego czyszczenia konsoli (ze skryptu, a nie z samej konsoli):

if(console._commandLineAPI && console._commandLineAPI.clear){
    console._commandLineAPI.clear();//clear in some safari versions
}else if(console._inspectorCommandLineAPI && console._inspectorCommandLineAPI.clear){
    console._inspectorCommandLineAPI.clear();//clear in some chrome versions
}else if(console.clear){
    console.clear();//clear in other chrome versions (maybe more browsers?)
}else{
    console.log(Array(100).join("\n"));//print 100 newlines if nothing else works
}
programmer5000
źródło
4

Zamiast wpisywać polecenie wystarczy nacisnąć:

CLTRL + L

wyczyścić chromowaną konsolę

Ilyas Karim
źródło
3

Na podstawie odpowiedzi Cobbala , oto co zrobiłem:

W moim JavaScriptwpisuję następujące:

setInterval(function() {
  if(window.clear) {
    window.clear();
    console.log("this is highly repeated code");
  }
}, 10);

Kod warunkowy nie będzie działał, dopóki nie PRZYPISASZ window.clear (co oznacza, że ​​Twój dziennik jest pusty, dopóki tego nie zrobisz). W TYPIE KONSOLI DEBUG:

window.clear = clear;

Violà - dziennik, który się oczyszcza.

Mac OS 10.6.8 - Chrome 15.0.874.106

Jacksonkr
źródło
3

Chrome - naciśnij CTRL+L podczas ustawiania ostrości na konsoli.

Firefox - clear() w danych wejściowych konsoli.

Internet Explorer - naciśnij CTRL+L podczas ustawiania ostrości na konsoli.

Edge - Naciśnij CTRL+ Lpodczas ustawiania ostrości na konsoli.

Miłego dnia!

WingmanImd
źródło
2

W systemie MacOS :

  1. Chrome - CMD+K
  2. Safari - CMD+K
  3. Firefox - brak skrótu

W systemie Linux :

  1. Chrome - CTRL+L
  2. Firefox - brak skrótu

W systemie Windows :

  1. Chrome - CTRL+L
  2. IE - CTRL+L
  3. Edge - CTRL+L
  4. Firefox - brak skrótu

Aby działał w przeglądarce Firefox, userscriptsmożna go użyć. Pobierz GreaseMonkeyrozszerzenie dla FF.

document.addEventListener("keydown",function(event){
    if(event.metaKey && event.which==75) //CMD+K
    {
        console.clear();
    }
});

W skrypcie zaktualizuj metadane o wartości, //@include *://*/*aby działały na wszystkich stronach. Działa tylko wtedy, gdy fokus znajduje się na stronie. To tylko obejście.

Vignesh Raja
źródło
1

Myślę, że nie jest to już dostępne z powodu „problemów bezpieczeństwa”.

console.log(console) z kodu daje:

Console
memory: MemoryInfo
profiles: Array[0]
__proto__: Console

Poza kodem dostępna jest funkcja _commandLineAPI. Trochę irytujące, ponieważ czasami chcę się po prostu zalogować i nie widzieć starego wyniku.

Tatsh
źródło
1
Nie zapomnij śledzić łańcucha prototypów podczas określania, jakie metody są dostępne na obiekcie :)
alex
-1

Dodam do tego, ponieważ jest to wyszukiwanie, które wyszło najlepiej w Google ..

W przypadku korzystania z ExtJS / JavaScript wstawiam to, a konsola jest czyszczona - chyba że wystąpi błąd.

console.log('\033[2J');

Jestem bardziej niż prawdopodobne, że zejdę z kursu, ale w ten sposób wyczyszczam konsolę dla każdego ładowania / odświeżania strony.

Cookra
źródło
Powinieneś przebudować język, aby była to bardziej odpowiednia odpowiedź.
Dow Benyomin Sohacheski