如何确保在java脚本中的所有其他代码之前执行一些代码?

时间:2011-06-08 23:13:28

标签: javascript

我是javascript的新手,是什么让我对Javascript中的操作顺序感到困惑。

假设我有以下代码:

var myArray = [];
function getArray(x){
var _array = [];
.... {the code here is pretty big}
return _array;
}
myArray = getArray(1);

其余代码都基于myArray。不幸的是,使用此代码有时myArray没有及时设置,因此其余代码无法正常工作。无论如何,当myArray设置正确时,我可以确保执行其余的代码吗?

谢谢,

阿米尔。

2 个答案:

答案 0 :(得分:3)

在任何其他javascript之前将它放在js文件或html的顶部,它将首先执行。这假设您没有像setTimeout或jQuery的文档就绪函数那样包含它。

JS在Web浏览器加载时执行,因此它出现的顺序决定了它相对于其他JS执行的顺序。

答案 1 :(得分:1)

> var myArray = [];

javascript处理有两个阶段:第一个处理所有声明,第二个处理代码。因此无论声明 myArray 的位置如何,都会在执行任何代码之前声明它。

当代码执行开始时,语句按顺序执行,以便在执行以下代码之前为 myArray 分配一个空数组。

>  function getArray(x) { 
>    var _array = []; ....
>    // the code here is pretty big
>     return _array;
>  } 

同样, getArray 也将在任何代码运行之前定义。

>  myArray = getArray(1);

这将使用 getArray 返回的内容替换上面分配给 myArray 的数组。

如果有时 myArray 的值不符合您的预期,那么它是 getArray 返回的结果,所以我会专注于此。