考虑以下 Javascript 代码:
function(){
setTimeout(function() {
$("#output").append(" one ");
}, 1000);
setTimeout(function() {
$("#output").append(" two ");
}, 1000);
}
您还可以在jsfiddle上查看此示例。
我可以确定的值#output
always "one two"
,按那个顺序吗?通常,我会这样处理这个问题:
function(){
setTimeout(function() {
$("#output").append(" one ");
$("#output").append(" two ");
}, 1000));
}
但我不能那样做,因为我从服务器获取消息,告诉我要执行哪个函数(在本例中为 append"one"
或 append "two"
),我必须稍微延迟执行。
我已经在 Internet Explorer 9、Firefox 14、Chrome 20 和 Opera 12 中测试过这段代码,并且输出总是"one two"
,但我可以确定这将永远是这种情况吗?