# Q1~Q5
### 嬿媜
#### Q1
- 簡化code
- return true
- 轉型問題
- 使用者輸入都是字串
#### Q2
- 嬿媜修改為隊問題動手腳
- promise可以提身使用者體驗 or prompt
- 研究同步非同步 && promise , prompt
- 根據問題數量去拆分 可以避免重複回答問題 這提我答錯時 又要重複輸入第一提
- 有機會研究mock
#### Q3
- 提示可以提昇使用者體驗 比方你的年齡有優惠喔之類得
- 命名問題 amusementPrice
#### Q4
- keyword:for break
- 邏輯拆分問題 formula得部份
- for迴圈預設i值 不要隨意更改預設 跟專案有關
#### Q5
- 研究reduce
- 命名問題看 codecomplete ch.11
- 邏輯界面分開問題
- test驗證邊界 比方q3 驗證6 & 65
- test 可以包一起 一起測試 比方q5-testBundle
- js youtuber akshay saini
- 內聚 & 耦合
---
### 鵬化
#### Common
- code indent (manual or use tool, such as prettier)
- spelling check tool
- utilize validation rules
---
- 使用排版工具,
- 外掛檢視文字拼音工具spell checking
- 建立utilize做工具檔案管理。(我的module.js)
- 思考如何在需求不便,簡化code寫法
- 假設情境-在要改code得情況下,如果測試寫好,就可以順者測試得邏輯再去重寫,或是回推原本code,jest記號做好。(就像糖果屋得概念
- if已經算是測試true、false,所以不必特地在寫(我的q4module.js
- import、export其他用法
- keyword:嚴格模式、early return、promise、async await
- 思考code可讀性問題,該在何處加入換行
- 思考用recursive去改寫for
- 好讀、好寫、有架構才是現在重點,邏輯炫泡寫法已現階段是其次,不過作到專案也是相同邏輯
Q1問題目前還未解完,在研究一下
#### Q1
- strInput should Number type, in order to make your function scalable
#### Q2
- use early return, in order to make your conditions more readable
- your result does not show. XD
#### Q3
- There are only 2 conditions in this case, so the return is not necessary.
#### Q4
- checkOdd fn cam be simplify
### Chris
#### Q1
- 寫code像在寫春聯,有對丈,有關係,比方function參數是(a,b,c),那變數得排序就是如下,a在最前 再來是b、c
- let a = xxx
- let b = xxx
- let c = xxx
- 了解eventloop+loupe運作
- jest Describe就類似主標題or主題,所以要寫
#### Q4
- `key:F2` 是改全局文字,在js裡只會改動scope(more deteil pls check help => editor playground)
- understand <**Destructuring assignment**>
- check out `forEach,reduce`
- check out 除錯訊息,中斷點,callstack
- open chrome inspect and chlick source,if you see the function number all the same, can deduce it's **Recursion**
- check out 單部執行
- check out **pure**
- Chris suggest not useing prettier at frist at js
- correct code pls step by step
- Judging the values of 0 and 1 basically refers to the Boolean value
- not much people useing `continue`
- `if else` basically not breckble, becuase of relate issue
- check out 正反器,latch,filp flop
- jest can use try catch
- 測試重構不會出現bug
- if else = 2選1 正常流程
- try catch = 不正常流程
- 其他解法 2個數組放一起,然後在將兩兩數組相減
---
# Q6~Q10
personal
Q7 簡單來說就是x軸與y軸交換
### Julia
#### Q6
- 迴圈的 i 可以建立名稱
- 因為 prompt 放在迴圈裡,所以造成輸入錯誤會回到上一動問題
- Julia 認知函式是動作,所以命名為動詞; Array 使用名詞
- `nameList` better then `input4Name` because its `Array`
- 可建立 2 個函式,一個針對 odd單字 ,一個針對 odd 字母
- 在寫 code 時,假設函式裡有數值,建議為數值建立變數、常數
- 有 return 測試才能接收到
#### Q10
- jest 可測試 main
- export 分兩種
- named 可多個 export
- defult 只能有一個,並且可隨意取名,可隨意 import 隨機名稱
### Eva
#### Q6
#### Q10
### Chris
#### Q6
- 想想命名用意,除了讓人理解或是讓人可猜測功能
- 檢查內容要與錯誤訊息要一致,這裡舉例驗證得`checkAlphabat`,驗證檢查字母,可是報錯訊息寫("檢查英文單字"),字母非單字
- `extractOddWordAddCommas`不是用來 `catch` 錯誤,所以不應該在 `try catch` 裡面,不符合這 function 作用
- 這 `function getName()` 裡面得 `prompt(input)` ,input 改為 question,因為 Fn 要做得事取得使用者名,但"如何作到"那就是問題,提出問題
- for 迴圈得 i 是控制迴圈用,關於 i 是否改名?如果使用 i 得情況夠單純,比如迴圈裡只有跑一行,那就不太需要改名稱
- 要確認
#### Q10