Frontend
Functional Programming (FP)
改為 FP
function calculationBMI(bmi if(bmi < 0) { return '資料錯誤' } else if(bmi < 18.5) { return '過輕' } else if(bmi >= 18.5 && bmi < 24) { return '正常' } else if(bmi >= 24 && bmi < 27) { return '過重' } else if(bmi >= 27 && bmi < 30) { return '輕度肥胖' } else if(bmi >= 30 && bmi < 35) { return '中度肥胖' } else{ return '重度肥胖' }}
calculationBMI(20); // '正常'改為 FP
// match 函式先省略const lessThan = x => bmi => bmi< x ;
const calculationBMI = BMI =>match(BMI).on(lessThan(0), () => '資料錯誤').on(lessThan(18.5), () => '體重過輕').on(lessThan(24), () => '正常').on(lessThan(27), () => '過重').on(lessThan(30), () => '輕度肥胖').on(lessThan(35), () => '中度肥胖').otherwise(() => "重度肥胖")
calculationBMI(20); // '正常'