# 函式回傳值 <div class="block"> **本篇會談到** - return 回傳的用意 - 多個函式的用法 </div> ## return 回傳的用意 - 函式可以**透過 `return` 回傳運算完成的值**,回傳出來的值可以在函式外宣告變數去儲存。 - `return` 可以回傳任何值,包含字串、物件、數值... - **`return `執行時,會跳出該函式**。因此 `return` 後面如果是空值,有“終止”的功能 ```javascript= function calcTotalScore(chineseScore,mathScore){ return chineseScore + mathScore; //回傳,會把值回傳到呼叫 calcTotalScore 的地方 } // return 回傳後的值,可以被賦予在變數上 //我宣告一個變數,名為 markTotalScore,並賦予右邊函式的值。 let markTotalScore = calcTotalScore(40,60);//會先將參數丟進 calcTotalScore 運算後,接收 return 回傳的值 console.log(markTotalScore)//100 ``` - 情境題 <iframe height="300" style="width: 100%;" scrolling="no" title="8/13 (五) - 函式傳參數、return 練習" src="https://codepen.io/unayo/embed/abWrEPy?default-tab=js&theme-id=dark" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> See the Pen <a href="https://codepen.io/unayo/pen/abWrEPy"> 8/13 (五) - 函式傳參數、return 練習</a> by unayo (<a href="https://codepen.io/unayo">@unayo</a>) on <a href="https://codepen.io">CodePen</a>. </iframe> ## 多個函式的用法 除了單一函式回傳值出來,也可以多個透過函式之間互相傳遞(範例如下) **自己出題目練習看看:** 餐廳一份套餐 399 元 現在促銷活動滿 500 打八折 vip 會員可以再打九折 今天vip小明和姊姊兩個人去點了兩份餐 <iframe height="300" style="width: 100%;" scrolling="no" title="JS - function return" src="https://codepen.io/unayo/embed/gOWQYVq?default-tab=js&theme-id=dark" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> See the Pen <a href="https://codepen.io/unayo/pen/gOWQYVq"> JS - function return</a> by unayo (<a href="https://codepen.io/unayo">@unayo</a>) on <a href="https://codepen.io">CodePen</a>. </iframe> ```typescript= 1. 設計兩個含有參數的函式, 2. 回傳晚餐價錢 console.log(activity(dinner*2)); 3. 第一個函式 function activity(price) 代入晚餐價錢 4. 如果小於 500,非會員就 return vip(price) ,如果是 vip 會員return vip(price*0.8) 5. !!!!!此時vip(price)函式的 price跟activity(price)是不一樣的 vip(price)的 price 是經過第一個函式運算過後的值 ``` > 參考: > [JavaScript 初心者筆記: 函式實際運作 - 回傳值與函式間互相傳遞](https://ithelp.ithome.com.tw/articles/10214256) ###### tags: `JS` {%hackmd @unayojanni/H1Qq0uKkK %}