是否需要以相反的顺序声明javascript函数?

时间:2014-03-10 17:10:01

标签: javascript function

详细说明:如果我愿意的话,例如以下代码:

//Javascript example
var alice = function() {
    var value = bob() + 1;
    console.log value
}
var bob = function() {
    var value = 1;
    return value;
}

//Running function A
alice()

我是否必须首先声明函数B,因为我在函数A中调用它而尚未到达函数B.

3 个答案:

答案 0 :(得分:1)

没有

如果你有一个函数声明,那么它将被提升并且顺序无关紧要(尽管将函数放在一个顺序中,以便在调用函数之前没有出现函数调用是好的做法)。

如果您有函数表达式(就像您在示例中所做的那样),那么您需要在调用之前创建函数,并注意在此示例中没有它们在行alice()之前被调用,因此只有那行才需要在函数之后,函数本身的顺序无关紧要。 (但上述最佳实践原则仍然存在)。

答案 1 :(得分:0)

不,因为Javascript解释器会识别之后声明的函数,并将它们正确地链接到相关行。

答案 2 :(得分:0)

唯一的限制是在使用之前定义每个函数