猿问

控制台console.log()输出问题

html代码如下:

<div id="ce">
      111
    </div>

jquery代码如下:

var id = $('div').attr('id');
      console.log(id);
      setTimeout("console.log("+id+")",1000);
      setTimeout(function(){
        console.log(id);
      },1000);

运行结果,为什么setTimeout("console.log("+id+")",1000);这一行代码会输出整个DOM对象

EugenioCode
浏览 2216回答 1
1回答

无所畏惧小小小

首先通过id可以直接直接调用一个元素:console.log(ce);即可以直接打印出对应的元素<div id="ce"> 111 </div>明白了这点再看你的代码,给console.log加了引号,其实发生了一次转义,打印一下就明白了.setTimeout(console.log("console.log(" + id + ")"), 1000);以上这一句的输出结果是:console.log(ce)
随时随地看视频慕课网APP

相关分类

JQuery
我要回答