繁体   English   中英

JavaScript console.log执行顺序?

[英]JavaScript console.log execution order?

我的代码看起来像这样:

function pathfind (start,end,map)
{
    this.Init = function ()
    {
       this.open_node = new Array();
       this.open_node.push(start);
       console.log(this.open_node);
       this.Loop();
    }
    this.Loop = function ()
    {
       //Some code here
    }
    this.Init();
}

出于某种原因,当我将“start”推入this.open_node并记录其值时,我得到“未定义”。 但是,经过一些错误测试,我意识到这个评论出来了.Loop(); 在this.Init中导致push正常运行,console.log按原样返回[start]。 任何人都可以解释为什么会发生这种行为?

编辑:我在打电话

pathfind({x:2,y:2},{x:24,y:24},parsemap(25,25));

经过进一步研究后,我发现console.log不会立即在Chrome中执行。 因此过时的报道。

你的代码执行返回undefined pathfind函数(它应该是这样的),但你等待this.Init函数的结果。 应该执行它而不是pathfind

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM