陳述式與表達式

Sunny
·
·
IPFS
·
六角學院2022年JS直播班的第二週核心課程心得筆記,講解Javascript的陳述式與表達式的概念。

表達式的英文是expression,陳述式的英文是statement。


什麼是表達式/運算式?


如果符合表達式的概念就可以塞在程式碼的片段,有以下種類:


1.任何的純值跟變數


不是變數宣告,而是變數宣告let a=1之後在主控台直接打變數例如a,a會回傳1


2.任何的運算子


例如console.log(a===1),會得到true的結果


3.執行函式


例如function fn(){ return 1}執行函式fn(),會回傳1,但若return沒有值,會回傳undefined


4.正規表達式


例如/[A-Z]/


什麼是陳述式?


**陳述式不一定是多行的,其中也可能混和表達式。


例如var a = 1; var宣告是陳述式,a=1是表達式,但整句是陳述式。


1.宣告與函式陳述式


例如function fn(){}跟{ const b = 1; }(大括弧{}裡面都是陳述式)


2.流程控制


例如if......else......


3.迴圈


4.import export


小測驗:


if(a=1){ }是陳述還是表達......?












答案是陳述式!!


你答對了嗎?


再一題let a=1;


a?"好吃":"不好吃"


請問上一行是陳述式還是表達式?










答案是表達式!!


關於函式有函式陳述式也有函式表達式,陳述式如下:


function fn(){return 1 ; };


陳述式寫在最外層,為定義使用。


function作為宣告使用,必須有一個名字。


但具名函式不一定是陳述式也有可能是表達式。


函式表達式:


const fn = function(){


console.log('匿名函式')


};


或是


const fn = function fn2(){


console.log('具名函式',fn2)


}


立即函式也是表達式:


(function(){ })()


箭頭函式也是表達式:


const a = () =>{}


或是在立即函式內用箭頭函式也是表達式:


(( )=>{ })()


表達式的用途......?


在React的JSX裡面一率都要使用表達式!!











CC BY-NC-ND 2.0 授权

喜欢我的作品吗?别忘了给予支持与赞赏,让我知道在创作的路上有你陪伴,一起延续这份热忱!