Console.log和debug不打印,只返回undefined。为什么可以呢? 我试过重新安装chrome浏览器,但没有用。

这里是chrome主页面的截图,所以函数没有在一些代码中重新定义


当前回答

在我的例子中,它只是一个旧的缓存Javascript文件。清理缓存后,我看到了我的日志。

其他回答

在我的例子中,它只是一个旧的缓存Javascript文件。清理缓存后,我看到了我的日志。

有时候,最简单的事情也会把我们绊倒……

在控制台中输入console.log并检查返回什么函数。如果你看到的是日志(){[原生代码]},那么它是别的东西。如果你看到了conn(){},那么在某个地方本机console.log函数被改变了。

今天在一个客户的网站上工作,这就是问题所在。如果是这种情况,您可以手动恢复console.log函数,或者使用console.dir()或console.warn()代替。

如果你看到了(){},那么有可能由于你在javascript中添加了一些功能,有时控制台停止工作。所以首先关闭所有选项卡重新启动chrome和在一个新的选项卡只是键入1 console.log('hi');如果它打印出来,那么它就确认了问题存在于脚本代码中。如果不是,那么恢复cosole.log。

要恢复控制台在新选项卡去控制台和类型删除窗口。控制台它将返回true后,重新启动chrome,你就可以走了。

React开发工具扩展导致问题

如果你有React开发工具chrome扩展安装,卸载它修复了我的问题。显然,这可能是一个艰难的权衡。

我从未使用过它们,所以删除它们解决了我的问题。

如果您看到(3条消息被过滤器隐藏。显示所有消息),然后在Chrome开发工具控制台单击显示所有消息链接。

因为如果该选项被错误启用,console.log("")消息将显示,但这将处于隐藏状态。

完整性:在当前的chrome版本中,设置不再在底部,但可以在控制台选项卡顶部点击“过滤器”图标(左起第二个图标)时找到。