Js 语句(statement)
语句(statement)”和“表达式(expression)
一个“句子(sentence)”是一个表达想法的词汇的完整构造。它由一个或多个“短语(phrase)”组成,它们每一个都可以用标点符号或连词(“和”,“或”等等)连接。一个短语本身可以由更小的短语组成。一些短语是不完整的,而且本身没有太多含义,而另一些短语可以自成一句。这些规则总体地称为英语的 文法。
语句完成值
一个鲜为人知的事实是,所有语句都有完成值(即使这个值只是undefined)。
语句:
简单和复合语句。
简单语句 :是指一逻辑行的代码。例如表达式语句、赋值语句和return语句等。
复合语句: 是指包含、影响或控制一组语句的代码。例如if、try和class语句等。表达式本身可以作为表达式语句,也能作为赋值语句的右值或if语句的条件等,所以表达式可以作为语句的组成部分,但不是必须成分(例如continue语句)。
表达式是表示值的式子,语句是操作值的式子。
- 表达式:产生一个值。表示值的式子
- 语句:执行一个操作
- 表达式语句:产生一个值并执行一个操作
所以表达式可以是语句(大范围),但语句不一定是表达式(小范围)。
// 表达式{}表示代码块
{a:1}
// 其他表达式
5 + 5 // => 1
true === true // => true
// 语句、简单赋值
Var obj = {a:1}
// 表达式语句
var x = y >= 0 ? y : -y
(function foo(){}); // 函数表达式:注意它被包含在分组操作符中
(var x = 5); // error! 分组操作符只能包含表达式,不能包含语句(这里的var就是语句