我在我的Firefox上运行这些代码,并且console
得到3 2 1
,这意味着语句在前一个结束之前运行。下一个语句在前一个结束之前运行
function test(){
setTimeout(function(){console.log(1)},1000); //statement 0
setTimeout(function(){console.log(2)},500); //statement 1
}
test();
console.log(3); //statement 2
它是javascript的一个功能,我是否必须在分配给它一些值后仔细检查一个变量? Cuz'太复杂了。
var a;
while(a!==get('some')){
a=get('some');
if(a===get('some')){
whatShouldBeRun();afterGetSome();
break;
}
}
我使用'的setTimeout()',以刺激其需要很长的时间的功能,比如网络或sql查询。我怎么能够知道一个函数是否异步运行,比如添加大量函数或处理大量文本的函数? – Rufus
超时显式异步运行。就像ajax调用一样。这很大程度上取决于你在做什么样的呼叫。如果他们运行异步,那么你将不得不修改你的处理来处理这个。请参阅编辑我的答案。 –
谢谢,我有一个线索在租赁:) – Rufus