4、foo");//等等如果我们定义一个如下代码(定义里包含一个语句),我们可能会说,定义歧义,会得到报错:if (true) function foo(){alert(1)}根据规范,上述代码是错误的(一个表达式语句不能以function关键字开头),但下面的例子就没有报错,想想为什么?我们如果来告诉解释器:我就像在函数声明之后立即调用,答案是很明确的,你得声明函数表达式functionexpression,而不是函数声明functiondeclaration,并且创建表达式最简单的方式就是用分组操作符括号,里边放入的永远