在 Google Chrome 中清除 javascript 控制台
Posted
技术标签:
【中文标题】在 Google Chrome 中清除 javascript 控制台【英文标题】:clear javascript console in Google Chrome 【发布时间】:2011-03-01 23:52:48 【问题描述】:我想知道我是否可以用一些命令清除控制台..
console.log()
,可以打印...有清除控制台的命令吗?..
我已经尝试console.log(console);
并在下面得到了这个功能......
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
[我想没有办法清理控制台...但我希望有人对我说...]
【问题讨论】:
相关帖子 - How to clear Chrome console by shortcut keys? & How to remove all recent console command 【参考方案1】:更新:
console.clear()
适用于所有浏览器
更新:截至 2012 年 11 月 6 日,
console.clear()
在 Chrome Canary 中为 now available。
如果您在控制台中输入clear()
,它会清除它。
我认为没有办法以编程方式执行此操作,因为它可能会被滥用。 (控制台被某些网页清除,最终用户无法访问错误信息)
一种可能的解决方法:
在控制台输入window.clear = clear
,然后您就可以在页面上的任何脚本中使用clear。
【讨论】:
duh... javascript 函数是clear()
... 是一样的。
一个可能会令人讨厌的场景:有人开发了一个网页,使用 clear 命令,它进入了生产代码。您导航到该页面并且某些内容中断了。您无法弄清楚为什么,因为控制台已被页面清除。
console.clear() 现在可在 Chrome 中使用。在 Canary 中尝试一下。
当光标聚焦在控制台时,您可以简单地按 CTRL+L。所有控制台输出都将被擦除。
请注意,clear()
如果您选中了“导航时保留日志”,则该选项不起作用。【参考方案2】:
总有好办法:
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'));
这不是最优雅的解决方案,我知道 :) ...但有效。
对我来说,我通常只打印一个长的“-----”分隔线,以帮助使日志更易于阅读。
【讨论】:
当你不能使用手术刀时,使用斧头。 +1console.log(new Array(24 + 1).join('\n')
做同样的事情,但要短得多。 :)
@Nyuszika7H 如果您追求简洁:console.log(Array(25).join('\n'))
。在没有 new
运算符的情况下调用 Array
构造函数会返回一个数组。
不错的建议。我正在准备一个使用 console.info 作为“演示者注释”的网络演示(在 Christian's advice 之后),这就是我想出的,以防我不记得分配 window.alert
:var hasClear = (typeof clear == 'function'); if(hasClear) clear(); console.info('bla'); if(!hasClear) console.log(Array(18).join('\n'));
我会选择硬编码字符串,因为它是更易读的代码。你可以看它 1 秒钟,并确切地知道它的作用。而且我想也有性能提升。【参考方案3】:
在 MacOS 上:
-
铬 - CMD+K
Safari - CMD+K
Firefox - 没有快捷方式
在 Linux 上:
-
铬 - CTRL+L
Firefox - 没有快捷方式
在Windows上:
-
铬 - CTRL+L
IE - CTRL+L
边缘 - CTRL+L
Firefox - 没有快捷方式
要使其在 Firefox 中运行,可以使用 userscripts
。下载 GreaseMonkey
FF 扩展。
document.addEventListener("keydown",function(event)
if(event.metaKey && event.which==75) //CMD+K
console.clear();
);
在脚本中,使用值//@include *://*/*
更新元数据,使其在每个页面上运行。只有当焦点在页面上时它才会起作用。这只是一种解决方法。
【讨论】:
【参考方案4】:我要补充一下,因为它是在 google 上名列前茅的搜索..
当使用 ExtJS / Javascript 我插入这个并且控制台被清除 - 除非有错误..
console.log('\033[2J');
我很可能偏离了方向,但这就是我为每个页面加载/刷新清除控制台的方式。
【讨论】:
您应该重组语言以使其成为更合适的答案。【参考方案5】:无需输入命令,只需按:
CLTRL + L
清除 chrome 控制台
【讨论】:
clear()
和 console.clear()
返回一个烦人的 Console was cleared
和 undefined
消息,这个命令真的清除它......非常感谢
是的,我一直用这个,很好!【参考方案6】:
如果你只想在调试的时候清除控制台,你可以简单地点击“ban-circle”⃠
按钮来清除console.log。
或者,只需按 “Ctrl+L” 即可使用键盘清除控制台。
【讨论】:
【参考方案7】:你可以使用
console.clear();
如果您正在使用 javascript 编码。
否则您可以使用CTR+L
清除 cosole 编辑器。
【讨论】:
【参考方案8】:以编程方式清除控制台的多个答案的便捷汇编(来自脚本,而不是控制台本身):
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
【讨论】:
【参考方案9】:Chrome - 在关注控制台输入时按下 CTRL + L。
Firefox - clear()
在控制台输入中。
Internet Explorer - 按下 CTRL + L 同时聚焦控制台输入。
Edge - 在聚焦控制台输入时按下 CTRL + L。
祝你有美好的一天!
【讨论】:
【参考方案10】:这似乎工作得很好:
console.clear();
【讨论】:
【参考方案11】:Press
CTRL+L
清除 log
的快捷方式,即使您已勾选 Preserve log
选项。
希望这可以帮助。
【讨论】:
使用clear()
这么长时间了,但我从没想过要使用 Bash 臭名昭著的清除终端快捷方式。 :) 谢谢!【参考方案12】:
根据 Cobbal 的答案,我是这样做的:
在我的JavaScript
中,我输入了以下内容:
setInterval(function()
if(window.clear)
window.clear();
console.log("this is highly repeated code");
, 10);
在您分配 window.clear 之前,条件代码不会运行(这意味着您的日志在您这样做之前是空的)。 在调试控制台类型中:
window.clear = clear;
Violà - 自动清除日志。
Mac OS 10.6.8 - Chrome 15.0.874.106
【讨论】:
【参考方案13】:在 Chrome 中本地调试时,我使用以下为 cls
别名(在控制台中输入以下 JavaScript):
Object.defineProperty(window, 'cls',
get: function ()
return console.clear();
);
现在在控制台中输入cls
将清除控制台。
【讨论】:
【参考方案14】:如果您使用console.clear()
,这似乎适用于 chrome。请注意,它会输出“控制台已清除”消息。
注意,我在清除控制台后立即收到错误,因此它不会禁用控制台,只会清除它。另外,我只在chrome中尝试过,所以我不知道它是如何跨浏览器的。
编辑:我在 Chrome、IE、Firefox 和 Opera 中对此进行了测试。它适用于 Chrome、MSIE 和 Opera 的默认控制台,但不适用于 Firefox,但它确实适用于 Firebug。
【讨论】:
这是唯一对我有用的建议。铬。【参考方案15】:铬:
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()
。
【讨论】:
这仅适用于 Chrome 上的控制台本身,在这种情况下,您也可以直接使用clear()
。【参考方案16】:
在 Mac 上,您也可以像在终端中一样使用 ⌘+K
。
【讨论】:
这是thead最有用/实用的解决方案。谢谢! :)【参考方案17】:在 Chrome 控制台上用鼠标右键单击,我们可以选择清除控制台
【讨论】:
【参考方案18】:我认为由于“安全问题”而不再可用。
console.log(console)
来自代码:
Console
memory: MemoryInfo
profiles: Array[0]
__proto__: Console
在代码外部,_commandLineAPI 可用。有点烦人,因为有时我只想记录而不看到旧的输出。
【讨论】:
在确定对象上可用的方法时不要忘记遵循原型链:)【参考方案19】:console._inspectorCommandLineAPI.clear()
这是有效的
【讨论】:
Uncaught TypeError: Cannot call method 'clear' of undefined
以上是关于在 Google Chrome 中清除 javascript 控制台的主要内容,如果未能解决你的问题,请参考以下文章