六角學院 JS 核心筆記 (十)【運算子、型別與文法】- 陳述式與表達式
AdSense
前言
Statement 陳述式:主要在陳述一些命令,做一些事情,但是不回傳結果。
Expression 表達式:主要透過符號做一些運算,然後回傳結果。
Statement 陳述式的種類
- 流程控制
- Block 區塊陳述、break、continue、if…else、try…catch
- 變數宣告
- var、let、const
- 函式陳述式與類別
- function、class
- 迴圈
- 其他
- debugger、export、import、label
函式陳述式
這種創造出來的函式,又稱為具名函式。
1 | function square(x) { |
Expression 表達式的種類
表達式,就是句子有做出「運算」這件事,會有相對應的運算子。
- 賦值 (
=
)、包含函式表達式 - 比較大小
- 算數
- 位元 Bitwise
- 布林邏輯
- 條件三元運算
var status = (age >= 18) ? '成人' : '小孩';
- 一元運算
- delete、typeof
- 關係運算
- in、instanceof
- 其他
- this、new、super 等
賦值運算子
a = 5
是一個表達式,回傳 5。
1 | let a = 5; |
函式表達式
這種創造出來的函式,又稱為匿名函式。
1 | var square = function (x) { |
補充說明
函式陳述式 (Statement) 比函式表達式 (Expression)、非函式宣告有更高的 Hoisting 優先權。忘記的人可以去看六角學院 JS 核心筆記 (六)【執行環境與作用域】- 提升 (Hoisting)
參考資料:
MDN - 陳述式與宣告
MDN - 運算式與運算子
六角學院:JavaScript 核心篇 - 邁向達人之路
JS 原力覺醒 Day07 - 陳述式 表達式