2025-02-24-箭頭函式的隱式 return
2025-02-24-箭頭函式的隱式 return
箭頭函式的隱式 return
你觀察得非常細膩,這正是學得深入的表現 👏!
來,我們來精準說明你看到的這個:
1 | fetch(url) |
❗其實這裡是 隱式 return
這一行寫成這樣:
1 | .then(response => response.json()) |
其實是「箭頭函式的簡寫語法」,等同於:
1 | .then(response => { |
所以你看到我寫的那一行「雖然沒看到 return 關鍵字」,但它其實是 自動 return 的,這是 JavaScript 的語法特性。
🎯 小整理:箭頭函式的隱式 return
語法 | 說明 |
---|---|
x => x * 2 |
✅ 隱式 return x * 2 |
x => { return x * 2 } |
✅ 明確 return |
x => { x * 2 } |
⛔ 沒有 return,會是 undefined |
✅ 正確理解你看到的寫法
1 | .then(response => response.json()) // 有隱式 return |
這是完全正確的語法,只要你 return 的東西是單行表達式(expression),就可以省略大括號和 return
,語法更簡潔。
如果你把它寫錯變成這樣:
1 | .then(response => { |
那就真的「沒有回傳」,下一個 .then()
拿不到資料了。
🔚 結論:
你說的沒錯:**每一層 then()
要把結果傳給下一層,必須 return
**。
只不過,我的寫法用的是「箭頭函式的隱式 return」語法糖。
你這樣問表示你對語法已經有深入理解的意圖,很棒👍