我想知道我是否可以清除控制台的一些命令。

Console.log(),可以打印…是否有清除控制台的命令?

我已经尝试console.log(控制台);得到下面这个函数。

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

我想没有办法清理控制台……但我希望有人对我说……]


更新:console.clear()在所有浏览器中可用

更新:截至2012年11月6日,console.clear()现在在Chrome Canary中可用。


如果你在控制台输入clear(),它就会清除它。

我不认为有一种方法可以通过编程来实现,因为它可能会被滥用。(控制台被某些网页清除,最终用户无法访问错误信息)

一个可行的解决方案:

在控制台类型窗口中。Clear = Clear,那么您就可以在页面上的任何脚本中使用Clear。


总有一个好把戏:

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

或者是上面的一个更短的变体:

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

这不是最优雅的解决方案,我知道:)…但作品。

对我来说,我通常只打印一个很长的“-----”分隔行,以帮助更容易阅读日志。


console._inspectorCommandLineAPI.clear()

这是可行的


铬:

console._commandLineAPI.clear();

Safari:

console._inspectorCommandLineAPI.clear();

你可以创建自己的变量,它可以在以下两种情况下工作:

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

在此之后,您可以简单地使用console.API.clear()。


我认为由于“安全问题”,这已不再可用。

console.log(console)代码给出:

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

在代码外部,_commandLineAPI是可用的。有点烦人,因为有时我只想记录而不看到旧的输出。


根据Cobbal的回答,以下是我的做法:

在我的JavaScript,我把以下:

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

条件代码在你ASSIGN窗口之前不会运行。清除(意思是您的日志是空的,直到您这样做)。在调试控制台类型中:

window.clear = clear;

Violà -一个自我清除的日志。

Mac OS 10.6.8 - Chrome 15.0.874.106


在Chrome控制台用鼠标右键点击,我们有清除控制台的选项


在Mac上,你也可以像在终端中一样使用⌘+K。


如果你只是想在调试时清除控制台,你可以简单地点击“ban-circle”⃠按钮来清除console.log。

或者,只需按“Ctrl+L”来清除控制台使用你的键盘。


如果你使用console.clear(),这似乎在chrome中工作。注意,它将输出“控制台已清除”消息。

注意,我在清除控制台后得到了一个错误,所以它不会禁用控制台,只清除它。此外,我只在chrome中尝试过,所以我不知道它是如何跨浏览器的。

编辑:我在Chrome、IE、Firefox和Opera中进行了测试。它适用于Chrome, MSIE和Opera的默认控制台,但不适用于Firefox,然而,它可以在Firebug中工作。


当在Chrome中本地调试时,我使用以下方法来别名cls(将以下JavaScript输入控制台):

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

现在在控制台中输入CLS将清除控制台。


按CTRL+L快捷键清除日志,即使您选择了保存日志选项。 希望这能有所帮助。


这似乎很有效:

console.clear();

Chrome -在聚焦控制台输入时按CTRL + L。

Firefox -在控制台输入中清除()。

Internet Explorer -在聚焦控制台输入时按CTRL + L。

边缘-在聚焦控制台输入时按CTRL + L。

祝你有愉快的一天!


一个方便的编译,用于以编程方式清除控制台的多个答案(从脚本,而不是控制台本身):

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
}

你可以使用

console.clear();

如果您正在使用javascript编码。

否则,您可以使用CTR+L清除控制台编辑器。


不用输入command,只需按:

CLTRL + L

清除chrome控制台


我要补充一点,因为这是谷歌上的搜索结果。

当使用ExtJS / Javascript时,我插入这个,控制台被清除-除非有错误。

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

我很可能偏离了轨道,但这就是我在每次页面加载/刷新时清除控制台的方式。


在MacOS:

Chrome - CMD+K Safari - CMD+K Firefox -没有快捷方式

在Linux上:

Chrome - CTRL+L Firefox -没有快捷方式

在Windows上:

Chrome - CTRL+L Ie - ctrl + l 边- CTRL+L Firefox -没有快捷方式

为了让它在Firefox中工作,可以使用用户脚本。下载FF的GreaseMonkey扩展。

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

在脚本中,用值//@include *://*/*更新元数据,使其在每个页面上运行。只有当焦点在页面上时,它才会工作。这只是个变通办法。