在javascript中等待执行

在javascript中等待执行,javascript,settimeout,Javascript,Settimeout,在上面的代码中,我想等到for执行完成,然后调用window.reLoad() 谢谢 编辑: 上面的代码是在一个ajax请求的回调函数中,这会有所不同吗 $(document).ready(function (){ var names = new Array(); names[0] = 'jimit'; names[1] = 'vinod'; names[2] = 'vineet'; for( var x in names){ con

在上面的代码中,我想等到for执行完成,然后调用window.reLoad()

谢谢

编辑:

上面的代码是在一个ajax请求的回调函数中,这会有所不同吗

$(document).ready(function (){

    var names = new Array();

    names[0] = 'jimit';
    names[1] = 'vinod';
    names[2] = 'vineet';

    for( var x in names){
        console.log(names[x]);
    }
    window.reLoad();


});


为什么在第一个数组元素定义之后,连续两次覆盖它?是否打算这样做?好的,您可能希望在调用reLoad()之前看到三个日志输出?这不会发生,因为在同一个阵列插槽中存储了三次。如果这不是问题,你能详细说明一下吗?@Lucius$alienhard抱歉,我不想添加到同一个数组槽中。我的问题看起来已经是你想要的方式了。你有什么问题?@Felix the window.reLoad()不会等到“for”循环完成,为什么在定义完第一个数组元素后,要连续两次覆盖它?是否打算这样做?好的,您可能希望在调用reLoad()之前看到三个日志输出?这不会发生,因为在同一个阵列插槽中存储了三次。如果这不是问题,你能详细说明一下吗?@Lucius$alienhard抱歉,我不想添加到同一个数组槽中。我的问题看起来已经是你想要的方式了。你的问题是什么?@Felix the window.reLoad()不会等到“for”循环完成。你的代码正在工作,但我在ajax请求的回调函数中有这一点。这会有什么区别吗???@jimy好吧,这不会有什么区别。在你改变方向之前,确保你做了你的事情。如果在同一个页面上,我建议您更新页面(使用js),而不是重定向。您的代码正在工作,但我在ajax请求的回调函数中有这一点。这会有任何区别吗???@jimy好的,这不会有任何区别。在你改变方向之前,确保你做了你的事情。若在同一个页面上,我建议您更新页面(使用js),而不是重定向。
$(function (){
var names = new Array();

    names[0] = 'jimit';
    names[1] = 'vinod';
    names[2] = 'vineet';

    for( var x in names){
    console.log(names[x]);
    }

    window.location = location.href;
})
$(function (){
    var names = new Array();

    names[0] = 'jimit';
    names[1] = 'vinod';
    names[2] = 'vineet';

    for( var x in names){
    console.log(names[x]);
    }


    setTimeout( reloadWindow, 2000 );

})

function reloadWindow(){

    window.location = location.href;

}