我可以问为什么有时候我们会创建一个函数,我们最终得到一个半冒号,有时候不会
function test(){
};
function test(){
}
答案 0 :(得分:1)
取决于您如何声明该功能。
var myfunc = function() {}; // use semicolon
function myfunc() {} // don't use semicolon
答案 1 :(得分:0)
检查压缩http://javascriptcompressor.com/
中的代码var test = function (){
}
a = 10;
与var test=function(){}a=10;
类似,SyntaxError
对于像
这样的声明函数来说不会有问题function test(){
}
压缩代码function test(){}a=10;
是有效的
答案 2 :(得分:0)
要将答案置于语境中,您需要处理两种情况。
函数声明 - 明确声明一个函数:
function someFunction(){
// some code
}
函数表达式 - 将函数声明为表达式:
var someFunction = function(){
// some code
};
注意在第二种情况下您只需要分号。当涉及功能提升的概念时,差异很重要。
函数提升基本上意味着您必须考虑在什么时候您希望函数在运行时“可见”(执行上下文)。案例1使函数在脚本中的任何位置都可见,无论您在脚本中声明函数的位置如何,您都可以随时调用它。该函数在执行上下文中被提升到更高的位置。另一方面,情况2不会发生这种情况,所以你只能调用你声明它的行下面的函数。