在IE11中,如何使用console.log?

时间:2014-03-11 02:15:08

标签: javascript internet-explorer

尝试使用console.log()但它始终打印undefined

尝试使用像Console.log IE9 issue这样的解决方案 它不起作用。

在此IE11 document中,有以下句子: Last but not least, forget about console.log(). The new tools now support Tracepoints easily allowing you to monitor specific values the same way you would via console.log().

这是什么意思?如何使用console.log在IE11中打印变量?


系统:Windows 7(VirtualBox IE images

IE版:11


似乎console.dir()是一个选项,但console.log()怎么样?它位于document,但为什么不生效?

2 个答案:

答案 0 :(得分:9)

即使这是一个老问题,但最近在使用IE11时仍让我头疼。

简单原因:除非打开devtools(即在IE11中按console),否则不会启动F12对象。

所以解决方法可能是,在加载console.log()之前打开devtools。

在我的情况下,当我的页面准备就绪时会加载console.log,所以我打开devtools并刷新页面以查看我的日志。

答案 1 :(得分:4)

我最近在运行Windows 10的最新预览版本时遇到了console.log的问题。下面是我尝试记录的代码。日志会说我的对象函数,proto和用户 undefined 。我可以"解决问题"这可以通过将我的IE版本更改为9或在console.log()上设置断点。据我所知,他们刚刚使控制台方法更严格,以符合this documentation.

我现在遵循的规则是在输出对象/变量时始终使用console.dir()。

  var PM = PM || {
    users:[]
  };

  var User = (function($){
    //Private Static Variables

    //Constructor
    function User(obj){
      this.id = obj.id;
      this.first = obj.first;
      this.last = obj.last;
    };

    return User;
  })(jQuery); 

  var John = new User({
    id: 1,
    first: 'John',
    last: 'Hargis'
  });
  var Nicole = new User({
    id: 2,
    first: 'Nicole',
    last: 'Hargis'
  });

  PM.users = {
    1: John,
    2: Nicole
  };
  window.console.log(PM); //Undefined
  window.console.dir(PM); //Works