我看到以下JavaScript函数的工作方式完全相同,那么除了语法之外还有什么区别。 功能是:
var functionName=function(){
//some code here
};
function functionName(){
//some code here
}
我用以下的方式打电话给他们:
functionName();
请不要告诉我语法有所不同,除此之外还有其他差别,如
1)speed of execution
2)Memory utilization etc.
提前致谢!
答案 0 :(得分:1)
在StackOverflow中已经多次回答过这个问题。这只是命名方式。所以从答案中拿出一些观点,我会说:
函数声明和变量声明总是被JavaScript解释器无形地移动(“提升”)到其包含范围的顶部。显然,函数参数和语言定义的名称已经存在。
优点&缺点:
命名功能有几点好处:
functionInstance.name
会显示您的姓名。 命名函数表达式
有一个缺点另一个主要区别
不同之处在于functionTwo
是在脚本块的分析时定义的,而functionOne
是在运行时定义的。例如:
<script>
// Error
functionOne();
var functionOne = function() {
}
</script>
<script>
// No error
functionTwo();
function functionTwo() {
}
</script>
<强>参考强>
答案 1 :(得分:0)