Löschen Sie die Javascript-Konsole in Google Chrome

215

Ich habe mich gefragt, ob ich die Konsole mit einem Befehl aufräumen kann.

console.log(), kann drucken ... gibt es einen Befehl zum Löschen der Konsole? ..

Ich habe versucht, console.log(console);diese Funktionen unten zu bekommen ...

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

[Ich denke, es gibt keine Möglichkeit, die Konsole aufzuräumen ... aber ich wollte, dass jemand es mir sagt ...]

Reigel
quelle

Antworten:

310

Update: Ab dem 6. November 2012 console.clear()ist es jetzt in Chrome Canary verfügbar .


Wenn Sie clear()in die Konsole eingeben, wird sie gelöscht.

Ich glaube nicht, dass es eine Möglichkeit gibt, dies programmatisch zu tun, da es missbraucht werden könnte. (Die Konsole wird von einer Webseite gelöscht. Der Endbenutzer kann nicht auf Fehlerinformationen zugreifen.)

eine mögliche Problemumgehung:

Im Konsolentyp window.clear = clearkönnen Sie clear in jedem Skript auf Ihrer Seite verwenden.

Cobbal
quelle
3
duh ... die Javascript-Funktion ist clear()... es ist das gleiche.
Chakrit
1
Ein mögliches Szenario, in dem es ärgerlich wäre: Eine Person entwickelt mit dem Befehl clear eine Webseite und gelangt in den Produktionscode. Sie navigieren zur Seite und etwas bricht. Sie können nicht herausfinden, warum, da die Konsole von der Seite gelöscht wurde.
Cobbal
38
console.clear () ist jetzt in Chrome verfügbar. Probieren Sie es auf Kanarienvogel.
Paul Irish
23
Sie können einfach STRG + L drücken, während der Cursor in der Konsole fokussiert ist. Alle Konsolenausgaben werden gelöscht.
Lido
17
Nur eine Notiz, clear()funktioniert nicht, wenn Sie "Protokoll bei Navigation beibehalten" aktiviert haben.
Beatgammit
130

Es gibt immer den guten alten Trick:

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");

oder eine kürzere Variation der oben genannten:

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

Nicht die eleganteste Lösung, ich weiß :) ... aber funktioniert.

Für mich drucke ich normalerweise nur eine lange "-----" Trennlinie, um das Lesen der Protokolle zu erleichtern.

Chakrit
quelle
109
Wenn Sie kein Skalpell verwenden können, verwenden Sie eine Axt. +1
mVChr
41
console.log(new Array(24 + 1).join('\n')macht das gleiche, aber es ist viel kürzer. :)
Nyuszika7h
15
@ Nyuszika7H Wenn Sie nach Prägnanz suchen : console.log(Array(25).join('\n')). Wenn Sie den ArrayKonstruktor ohne newOperator aufrufen, wird ein Array zurückgegeben.
alex
2
Schöne Vorschläge. Ich bereite eine Webpräsentation mit console.info als "Präsentationsnotizen" vor (gemäß Christians Rat ), und dies ist, was ich mir ausgedacht habe , nur für den Fall, dass ich mich nicht daran erinnere, Folgendes zuzuweisen window.alert: var hasClear = (typeof clear == 'function'); if(hasClear) clear(); console.info('bla'); if(!hasClear) console.log(Array(18).join('\n'));
Ronny
1
Ich würde mich für die fest codierte Zeichenfolge entscheiden, da es sich um besser lesbaren Code handelt. Sie können es 1 Sekunde lang betrachten und genau wissen, was es tut. Und ich denke, es gibt auch einen Leistungsgewinn.
Kevin Wheeler
39

Dies scheint gut zu funktionieren:

console.clear();
RealWorldCoder
quelle
20

Wenn Sie verwenden console.clear(), scheint das in Chrom zu funktionieren. Beachten Sie, dass die Meldung "Konsole wurde gelöscht" ausgegeben wird.

Ich habe dies getestet, indem ich eine Menge Javascript-Fehler gesammelt habe.

Hinweis: Ich habe direkt nach dem Löschen der Konsole einen Fehler erhalten, sodass die Konsole nicht deaktiviert, sondern nur gelöscht wird. Außerdem habe ich dies nur in Chrom versucht, daher weiß ich nicht, wie browserübergreifend es ist.

BEARBEITEN: Ich habe dies in Chrome, IE, Firefox und Opera getestet. Es funktioniert in den Standardkonsolen von Chrome, MSIE und Opera, jedoch nicht in Firefox. Es funktioniert jedoch in Firebug.

Ben
quelle
Dies ist der einzige Vorschlag, der für mich funktioniert hat. Chrom.
Jamie Hartnoll
17

Schaltfläche zum Löschen der Chrome-Konsole

Wenn Sie die Konsole beim Debuggen nur löschen möchten, können Sie einfach auf die Schaltfläche "Ban-Circle" klicken , um console.log zu löschen.

Alternativ können Sie auch einfach "Strg + L" drücken , um die Konsole über Ihre Tastatur zu löschen.

Dean Meehan
quelle
13

Chrom:

console._commandLineAPI.clear();

Safari:

console._inspectorCommandLineAPI.clear();

Sie können Ihre eigene Variable erstellen, die in beiden Fällen funktioniert:

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;
}

Danach können Sie einfach verwenden console.API.clear().

nyuszika7h
quelle
5
Dies funktioniert nur über die Konsole selbst in Chrome. In diesem Fall können Sie dies auch sofort tun clear().
Pimvdb
10

Sie können verwenden

console.clear();

wenn Sie mit Javascript-Codierung arbeiten.

CTR+LAndernfalls können Sie den Cosole-Editor löschen.

Avinash Raut
quelle
9

Press CTRL+LVerknüpfung zum Löschen log, auch wenn Sie die Preserve logOption aktiviert haben .
Hoffe das hilft.

AbhiNickz
quelle
1
Wird clear()so lange verwendet, aber ich hätte nie gedacht, Bashs berüchtigte Clear-Terminal-Verknüpfung zu verwenden. :) Vielen Dank!
iamdanchiv
7

Auf dem Mac können Sie auch ⌘+Kwie im Terminal verwenden.


quelle
Dies ist die nützlichste / praktischste Lösung des Kopfes. Vielen Dank! :)
Mg Gm
5
console._inspectorCommandLineAPI.clear()

Das funktioniert

ED
quelle
2
Uncaught TypeError: Cannot call method 'clear' of undefined
Reigel
4

Klicken Sie auf der Chrome-Konsole mit der rechten Maustaste und Sie haben die Möglichkeit, die Konsole zu löschen

Bhanu Kalyan
quelle
4

clsBeim lokalen Debuggen in Chrome verwende ich den folgenden Alias (geben Sie das folgende JavaScript in die Konsole ein):

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

Wenn Sie jetzt clsin die Konsole eintreten, wird die Konsole gelöscht.

cookch10msu
quelle
4

Eine praktische Zusammenstellung mehrerer Antworten zum programmgesteuerten Löschen der Konsole (aus einem Skript, nicht aus der Konsole selbst):

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
quelle
4

Anstatt den Befehl einzugeben, drücken Sie einfach:

CLTRL + L

Chromkonsole zu löschen

Ilyas Karim
quelle
3

Basierend auf Cobbals Antwort habe ich Folgendes getan:

In meine habe JavaScriptich folgendes eingefügt:

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

Der bedingte Code wird erst ausgeführt, wenn Sie window.clear zuweisen (dh Ihr Protokoll ist leer, bis Sie dies tun). IM DEBUG-KONSOLE-TYP:

window.clear = clear;

Violà - ein Protokoll, das sich selbst löscht.

Mac OS 10.6.8 - Chrome 15.0.874.106

Jacksonkr
quelle
3

Chrome - Drücken Sie CTRL+, Lwährend Sie den Konsoleneingang fokussieren.

Firefox - clear()in der Konsoleneingabe.

Internet Explorer - Drücken Sie CTRL+, Lwährend Sie die Konsoleneingabe fokussieren.

Kante - Drücken Sie CTRL+, Lwährend Sie den Konsoleneingang fokussieren.

Haben Sie einen guten Tag!

WingmanImd
quelle
2

Unter MacOS :

  1. Chrome - CMD+K
  2. Safari - CMD+K
  3. Firefox - Keine Verknüpfung

Unter Linux :

  1. Chrome - CTRL+L
  2. Firefox - Keine Verknüpfung

Unter Windows :

  1. Chrome - CTRL+L
  2. IE - CTRL+L
  3. Kante - CTRL+L
  4. Firefox - Keine Verknüpfung

Damit es in Firefox funktioniert, userscriptskann es verwendet werden. Download- GreaseMonkeyErweiterung für FF.

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

Aktualisieren Sie im Skript die Metadaten mit dem Wert, //@include *://*/*damit sie auf allen Seiten ausgeführt werden. Dies funktioniert nur, wenn der Fokus auf der Seite liegt. Es ist nur eine Problemumgehung.

Vignesh Raja
quelle
1

Ich denke, dies ist aufgrund von "Sicherheitsproblemen" nicht mehr verfügbar.

console.log(console) aus Code gibt:

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

Von außerhalb des Codes ist _commandLineAPI verfügbar. Etwas nervig, weil ich manchmal nur loggen und die alte Ausgabe nicht sehen möchte.

Tatsh
quelle
1
Vergessen Sie nicht die Prototypkette zu folgen , wenn die Bestimmung , welche Methoden für ein Objekt verfügbar sind :)
alex
-1

Ich werde dies ergänzen, da es sich um eine Suche handelt, die bei Google die Nase vorn hat.

Bei Verwendung von ExtJS / Javascript füge ich dies ein und die Konsole wird gelöscht - es sei denn, es liegt ein Fehler vor.

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

Ich bin mehr als wahrscheinlich vom Kurs abgekommen, aber so lösche ich die Konsole für jedes Laden / Aktualisieren einer Seite.

Cookra
quelle
Sie sollten die Sprache umstrukturieren, um eine angemessenere Antwort zu erhalten.
Dov Benyomin Sohacheski