Possible Duplicate:
What is the difference between a function expression vs declaration in Javascript?




我是一位在HTML,ASP.NET方面拥有丰富经验的Web开发人员。我了解很少的javascript,足以完成Web编程中的简单任务。最近,在阅读Jquery和其他复杂的javascript文件时,我一直在观察许多javascript代码,如下所示:

var increment = function(x){
    return x + 1;
}


我想知道这在概念上是否与下面相同,我已经习惯了:

function increment(x){
    return x + 1;
}


而且,如果相同,为什么我会看到很多使用第一个符号而不是第二个符号呢?

最佳答案

区别在于
var increment = function(x){ return x + 1;}
 是在解析时为脚本块定义的,而function increment(x){ return x + 1;}是在运行时定义的。
看到这个:

<script>
increment();

var increment = function()
{
}
</script>


这会给你错误..

<script>

increment();

function increment()
{
}
</script>


不会给你错误。 。

关于javascript - 这两个代码等效吗? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9060558/

10-11 12:24