语句和表达式
JavaScript中的表达式和语句是有区别的.一个表达式会产生一个值,它可以放在任何需要一个值的地方,比如,作为一个函数调用的参数.下面的每行代码都是一个表达式:
语句可以理解成一个行为.循环语句和if语句就是典型的语句.一个程序是由一系列语句组成的.JavaScript中某些需要语句的地方,你可以使用一个表达式来代替.这样的语句称之为表达式语句.但反过来不可以:你不能在一个需要表达式的地方放一个语句.比如,一个if语句不能作为一个函数的参数.
表达式有返回值可能是undefined,语句起作用
//()是表达式返回最后一个
<script>
()//报错
</script>
<script>
(a=1)//不报错
</script>
匿名函数表达式不能被预编译引起的报错
<script>
function () {}//报错
</script>
<script>
function a() {}//不报错
</script>
<script>
(function () {}())//不报错
</script>