簡體   English   中英

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

[英]What is window.console && console.log?

 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只有在按F12后運行javascript

只有當truthy表達式truthy才會評估右側表達式。 這就是邏輯AND運算符的工作原理。

它基本上是短的

if( window.console ) {
    console.log( open_date );
}

正如您可能猜到的那樣,這種情況的常見模式,因為console對象可能並非在每個瀏覽器(尤其是移動設備)上都可用。

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

console.log是指用於調試的控制台對象。 對於firefox我使用firebug例如。

但如果控制台不可用,腳本將崩潰。 所以window.console檢查控制台對象是否存在,如果是,它使用其日志功能打印出一些調試信息。

2.)它必須在代碼中嗎?

不,它僅用於調試目的

window.console && console.log(open_date); 

上面的代碼只是if條件語句的縮寫。 它不一定在那里。 它用於調試目的。 對於大多數瀏覽器,您可以按F-12打開瀏覽器調試控制台。 Chrome內置了調試控制台.Firefox有一個名為FireBug的擴展程序,您可以使用它。 下面是沒有'&&'的等效語句。

if (window.console) console.log(open_date); 

我更喜歡在我的javascript代碼的開頭添加以下代碼,以便我不必在所有地方都有這些“if”語句。 它確實節省了空間並消除了潛在的錯誤。

if (typeof console == "undefined") { window.console = {log: function() {}}; }

Jon Dvorak上面的評論包含了一種優雅的替代方式:

console = window.console || {log:function(){}}

Console.log是瀏覽器的記錄器,它在瀏覽器控制台上記錄消息。 編輯:較低版本的Internet Explorer不支持Console.log

此條件用於防止IE上的錯誤...因為,不幸的是,在IE(版本8)中我們無法使用console.log(“”)....但是測試人員仍然在Chrome上查看日志...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM