簡體   English   中英

如何在IE9上顯示對象的內容

[英]How to show the content of object on IE9

var obj = {'test1':"value1", "test2": "value2" }
console.log(obj);

重用

[object, Object]

是否可以在IE9上顯示不使用JSON.stringify的對象的內容?
像下面

{'test1':"value1", "test2": "value2" }

嘗試使用console.dir()而不是console.log() -這也可以與其他瀏覽器的控制台一起使用。

另請參見MSDN文章Internet Explorer 9開發人員工具深入研究–第3部分:調試JavaScript

如果您只想查看復雜對象中的內容而不使用完整比例的庫,則可以使用以下代碼:

var complexObject = { 
    "first field": "first value", "second": function() {
        alert("hello");
    }, 
    "third": ["I", "am", "an", "array"]
};

var complexObjectString = "";
for (var key in complexObject) {
    complexObjectString += key + ": " + complexObject[key] + "\n";
}
alert(complexObjectString);​

現場測試用例

在IE9中,您需要處於標准模式才能使用JSON對象。 例如,您必須具有doctype。

這不起作用: 實時復制 | 資源

<html>
<head>
<meta charset=utf-8 />
<title>Test Page</title>
</head>
<body>
<p>Without a doctype</p>
<script>
(function() {

  try {
    var obj = {
      foo: "bar"
    };

    var str = JSON.stringify(obj);

    display("<code>" + str + "</code>");
  }
  catch (e) {
    display("Exception: " + (e.message || e.toString()));
  }

  function display(msg) {
    var p = document.createElement('p');
    p.innerHTML = msg;
    document.body.appendChild(p);
  }
})();
</script>
</body>
</html>

失敗,並顯示一個錯誤,即未定義JSON

如果添加

<!doctype html>

到頂部,它的工作原理是: 實時復制 | 資源

暫無
暫無

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

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