JavaScript 語句類型又分為 陳述式 和 表達式。
陳述式 Statement
用於命令執行指定的一系列操作,最大的特徵是不會回傳結果。
常見陳述式:
- Block(區塊)
- break(中斷迴圈)
- if...else
- 宣告 - var / let / const
- function (指定一個函式,函式陳述式)
- for迴圈
表達式 Expression
又可稱為表示式、運算式,經常透過一些符號結合上下語句,並運算及回傳結果。
任何一段可以取得一個值的程式碼就是運算式(表達式)
eg:
- 例如 X = 7,使用運算子" = ",將7賦予給X,因此為運算式。
- 例如 3 + 4 ,雖然沒有指定任何變數等,但其中使用運算子" + ",將3與4相加,得到 7 ,因此為運算式。
陳述式與表達式不一定是一個完整的語句,其中一個片段也可以稱之。
注意
陳述式不能回傳結果,因此沒辦法賦予值,所以若將陳述式賦值在一個變數上會報錯。
ming = if(1===1){return true}; // error
函式陳述式(具名函式)
宣告一個函式,並且給之名稱
function callName(){}
函式表達式(匿名函式)
使用一個變數,並且將函式賦予到變數上。
中間插入一個運算子" = "。
var callName = function(){}
常見誤解區塊 block
{ } //block 區塊 屬於陳述式
{ var ming ="小明"; } //屬於陳述式
//因為屬於陳述式,不能使用變數接收他。
{ ming : "小明" } //物件(物件實字) = 表達式
//因為屬於表達式,可以使用一個變數接收他。
var a = {
{ ming : "小明" }
}