javascript控制台有什么问题?控制台中setTimeout返回的值是什么?
在控制台中运行以下代码时javascript控制台有什么问题?控制台中setTimeout返回的值是什么?,javascript,console,settimeout,Javascript,Console,Settimeout,在控制台中运行以下代码时 var ajout1=函数(编号){ 数字=数字| | 100; 控制台日志(编号+1); } 设置超时(ajout1,1000); 设置超时(ajout1(500),2000);//立即计算并不返回任何内容,但这是“按设计”显示如何不写入超时 setTimeout(函数(){ ajout1(1000) }, 3000);第二次设置超时时发生了什么setTimeout()? 然后,代码如下所示: setTimeout(undefined,2000); //undefi
var ajout1=函数(编号){
数字=数字| | 100;
控制台日志(编号+1);
}
设置超时(ajout1,1000);
设置超时(ajout1(500),2000);//立即计算并不返回任何内容,但这是“按设计”显示如何不写入超时
setTimeout(函数(){
ajout1(1000)
}, 3000);代码>第二次设置超时时发生了什么setTimeout()
?
然后,代码如下所示:
setTimeout(undefined,2000); //undefined, because ajout1(500) didn't return anything
然后
setTimeout("undefined",2000); //Coerced to string
…2秒后
eval("undefined") //Altough not really eval, but similar to it.
最突出的一点是settimeout的第一个参数应该是一个在T1和T3中正确传递的函数。但是,如果您没有传递函数,那么您传递的是函数的结果,因为它将立即被计算。setTimeout返回计时器实例的id。。。。不确定你期望发生什么。您不能从异步调用返回,并且您的代码没有返回任何内容。。。。
eval("undefined") //Altough not really eval, but similar to it.