首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是window.console && console.log?

什么是window.console && console.log?
EN

Stack Overflow用户
提问于 2013-01-28 19:53:18
回答 5查看 28.9K关注 0票数 12
代码语言:javascript
复制
 if (open_date) {
        open_date = get_date_from_string(open_date);
        window.console && console.log(open_date);
        window.console && console.log(cancel_until);

什么是window.console && console.log?它一定要在代码中吗?通过此脚本在IE (所有版本)上不起作用--> IE runs javascript only after pressing F12

EN

回答 5

Stack Overflow用户

发布于 2013-01-28 19:54:52

只有当左边的表达式为truthy时,右边的表达式才会被计算。这就是逻辑与运算符的工作方式。

它基本上是

代码语言:javascript
复制
if( window.console ) {
    console.log( open_date );
}

正如您可能猜对的那样,这是这种情况下的常见模式,因为console对象可能不是在每个浏览器(特别是移动设备)上都可用。

票数 17
EN

Stack Overflow用户

发布于 2013-01-28 20:09:34

1。)什么是window.console && console.log ?

console.log是指用于调试的控制台对象。例如,对于火狐,我使用firebug

但是如果控制台不可用,脚本就会崩溃。因此,window.console检查控制台对象是否存在,如果存在,则使用其日志函数打印一些调试信息。

2。)它一定要在代码中吗?

否,它仅用于调试目的

票数 5
EN

Stack Overflow用户

发布于 2014-10-30 01:32:40

代码语言:javascript
复制
window.console && console.log(open_date); 

上面的代码只是if条件语句的缩写。它不一定非得在那里。它用于调试目的。对于大多数浏览器,您可以按F-12打开浏览器调试控制台。Chrome有一个内置的调试控制台。火狐有一个名为FireBug的扩展,你可以使用它。下面是没有'&&‘的等价语句。

代码语言:javascript
复制
if (window.console) console.log(open_date); 

我更喜欢在javascript代码的开头添加以下代码,这样我就不必到处都是这些"if“语句。它确实节省了空间,并消除了潜在的错误。

代码语言:javascript
复制
if (typeof console == "undefined") { window.console = {log: function() {}}; }

乔恩·德沃夏克上面的评论包含了一种优雅的替代方法:

代码语言:javascript
复制
console = window.console || {log:function(){}}
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14561462

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档