式・文・式文(JavaScript / TypeScript)
式(Expression)
評価すると値になるもの。
結果があるかどうか、ともいう
変数に代入できる。
1 + 1 // 式
fn() // 式
flag ? "a" : "b" // 式(三項演算子)
function () {} // 式(関数式)文(Statement)
処理の1ステップ
値にならないので代入できない
if (x) { ... } // 文
for (...) { ... } // 文
return x; // 文
const a = if (true) { 1 }; // SyntaxError(文は式になれない)式文(Expression statement)
文を書く場所に式を単独で置いたもの(式は文になれる
評価値は捨てられるが、以下のような式の場合意味はある
- 変数への代入
- 変数の更新
- 関数を実行したいが、その結果に興味はない場合
- 例: console.log → コンソールに文字列表示したいだけで、console.log()の返す値がほしいわけではない
console.log("hi"); // 式文
i++; // 式文
1 + 1; // 式文だが値が捨てられる=無意味