2012-10-24 104 views
2

我不知道如何做到這一點,但我想用的console.log調試某些JS值:調試JavaScript和的console.log不工作

function SetAPIValue(key1, value1, scormVersion, methodCalled) { 
/* key1 value sometimes contains the value true or false and dont want to store these! */ 
    if (key1 == true || key1 == false) { } 
    else 
    { 
     /* value1 comes back with two values for cmi.suspend_data, then 3, then 4 all in one string seperated by a ';'! */ 
     setValuesArray.push({ 
     key: key1, 
     value: value1 
    }); 

    for (var i = setValuesArray.length - 1; i >= 0; i--) { 
    var array = setValuesArray[i]; 
    console.log(setValuesArray); 
    if (array.key == key1) { 
    if (key1 = "cmi.suspend_data") { 
     if (value1.indexOf(";") > 0) 
     { 
     valueArray[j] = value1.split(";"); 
     alert(valueArray[j]); 
     //alert("key1 is" + key1 + "and is returning " + setValuesArray[j-1].value); 
     return valueArray[j]; 
     } 
     } 
     else 
     return setValuesArray[i].value; 
     } 
    } 
    } 
    return ""; 
} 

我試圖看到什麼是控制檯。日誌(setValuesArray)。在IE9中運行我的應用程序我已啓用F12開發人員工具,我單擊控制檯選項卡,並且所有到達的位置都是:

LOG:[object Object] LOG:[object Object],[object Object] 日誌:[對象對象],[對象對象] 日誌:[對象對象],[對象對象],[對象對象]

我不明白嗎?我如何看到setValuesArray中的值? 我沒有安裝firebug-lite。我在贏得工作7 64bit 謝謝

+0

忘記_debug prints_並使用_Firebug_或Chrome的調試器。你會很快感謝你自己。你可以像文件樹一樣瀏覽你的變量,這更方便,然後試圖在控制檯中創建你自己的輸出。 IE的調試器對我來說是一個完全的謎......我從來沒有使用它的成功的痕跡。 IE是垃圾。 – jahroy

回答

1

我認爲使用console.log是最好的方法(與使用警報相比)。

但是,請記住,console.log()和alert()將顯示輸入參數和JS對象的字符串表示形式,它們是「[object Object]」。

我可以推薦的是堅持使用console.log()的想法,但如果您希望能夠在舊版瀏覽器中使用此功能,您可能需要查看本文。 IE在大多數情況下): http://patik.com/blog/complete-cross-browser-console-log/

另外,當您希望打印描述JS對象內容的字符串時,可以使用JSON.stringify()。 因爲Internet Explorers只有7個不支持JSON對象的本機支持。但是,通過在頁面中包含json2.js庫,您可以輕鬆解決該問題 - 代碼位於GitHub存儲庫here中。

1

你正在嘗試記錄對象,這就是爲什麼你得到這些輸出。嘗試下面的日誌或使用toString方法爲您的對象。

for (var i = setValuesArray.length - 1; i >= 0; i--) { 
    var array = setValuesArray[i]; 
    console.log("key: "+setValuesArray[i].key+ " value: "+setValuesArray[i].value); 
    ... 
    } 
+0

我整理了一下,謝謝大家! –