这是一个非常简短的示例。我将下面的代码复制并粘贴到一个文件中,保存并打开它。在 Chrome 中工作正常,在 ie 11 中失败。
控制台上的输出是胡说八道! 这是怎么回事?是否偶然发现了一些奇怪的错误?
test.b 显然不是未定义的,因为它可以通过 JSON 解析器和直接对象评估访问。
此外,切换日志函数中变量的顺序不会改变未定义的 test.b。
<!DOCTYPE html>
<html>
<head>
<title>wtf</title>
<script>
var test = {a:1,b:{c:1}}
console.log(test,JSON.stringify(test),test.b);
</script>
</head>
<body>
WTF IE
</body>
</html>
最佳答案
我最近也遇到了这个问题。
问题是我正在处理的页面将兼容模式设置为 IE8。
<meta http-equiv="X-UA-Compatible" content="IE=8" >
我相信 IE8 没有控制台,所以 console.log 将是未定义的。
关于javascript - IE 11 - console.log 显示对象属性未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30486810/