# JavaScripte 箭頭函式共筆
---
## 基本語法
- (參數1, 參數2, …, 參數N) => { 陳述式; }
- (參數1, 參數2, …, 參數N) => 表示式;
- // 等相同(參數1, 參數2, …, 參數N) => { return 表示式; }
- // 只有一個參數時,括號才能不加:
- (單一參數) => { 陳述式; }
- 單一參數 => { 陳述式; }
- //若無參數,就一定要加括號:
- () => { statements }
---
## 進階語法
- // 用大括號將內容括起來,返回一個物件字面值表示法:
- params => ({foo: bar})
- // 支援其餘參數與預設參數
- (param1, param2, ...rest) => { statements }
- (param1 = defaultValue1, param2, …, paramN = defaultValueN) => {
- statements }
- // 也支援 parameter list 的解構賦值
- var f = ([a, b] = [1, 2], {x: c} = {x: a + b}) => a + b + c; f(); // 6
---
## 一般函式
```
get('/', fuction(){
console.log...
})
```
---
## 箭頭函式
沒參數寫法
```
get('/', () => {
console.log...
})
```
---
有參數寫法
```
get('/', (event) => {
console.log...
})
```
箭頭函式之空函式寫法..
```
get('/', event => {
console.log...
})
```
---



`const foo = x => x+1` (含有return的功能了)
`const foo = x => { x+1 }`(有作用但沒有return功能去接值,印出還是undinfed,要手動加上return)
---
