# 陳述式與表達式 <div class="block"> **本篇會談到陳述式與表達式** 陳述式與表達式是 JavaScript 的兩大語句類型,**陳述式不會回傳結果,而表達式會回傳結果**。 </div> ## 陳述式 Statement 可以利用瀏覽器 console 輸入表達式會直接回傳 undefined。 陳述式可能是幾個單詞或是一個片段,舉凡, - `block { }` 大括號中有加入一段程式碼,才會成為陳述式 ```javascript= { console.log('im Statement'); } ``` - 流程控制`if...else` `reak 中斷當下的迴圈、條件判斷(switch)` - 宣告`var` `let` `const` ```javascript= var a; // var a; 是一段陳述式 // var 不是、a 也不是 // 幫變數準備一個記憶體空間,並不會回傳結果 ``` - 函數`function` `return` 、 - 迴圈 `for` `while` 、 - 其他`debugger` `import 引入外部模組` 等... ,更多可參考 [陳述式@MDN](https://developer.mozilla.org/zh-TW/docs/Web/JavaScript/Reference/Statements) ## 表達式 Expression : 回傳結果 可以利用瀏覽器 console 輸入表達式會直接回傳結果。 - 純值: 只要可以回傳結果就是表達式 ```javascript= 1 // 1 // 開啟瀏覽器檢查 1 會出現, 1 的值 // 所以 純值屬於表達式 ``` - 變數 - 運算子: 透過運算子運算前後語句,並回傳結果 - 執行函式 ```javascript= function fn(){ console.log('具名函式') } ``` - 正規表達式 - 函式:定義一段函式,運行後回傳結果則屬於表達式 ```javascript= var fn2 = function(){ console.log('函式表達式') } // 變數宣告時函式會回傳函式的本身 ``` ## 常見誤解區 1. `block` ```javascript= // 陳述式 block:可以用語句表示 { const a = '123'; } // 物件實字:JS 定義物件的其中一種方法,因為是函式的表達,所以可以用一個變數去接收他 var b ={ today:'11/23' } ``` ###### tags: `JS` {%hackmd @unayojanni/H1Qq0uKkK %}
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up