---
# System prepended metadata

title: 【黑歷史】可以不要把資料用在前端處理嗎

---

# 【黑歷史】可以不要把資料用在前端處理嗎

回顧一下前公司自己犯過的蠢事

當時小菜籽剛進去

後台架構是

**串接PHP的API來讓前端的Data Table來呈現資料**

有些數據從資料庫撈出來

要另外處理作計算才能呈現在頁面上

然後我把這些資料直接用`javascript` 寫一堆判斷在前端 (X

**較好的方式應該是在後端由PHP來處理計算更為恰當**

---

## 但如果遇到 **顯示面** 的需求

- 比如若沒有資料，就呈現`0`
- 但有時撈出來的值是 `空的` ，要怎麼塞一個`0` 出去呢？




在前端時就簡單多了，直接下一個三元
```javascript
not_null = isNaN(not_null) ? 0 : not_null ;
```

---

## 以下為當時寫的Code

- 不良示範
- 對 通通寫在前端(X

![](https://i.imgur.com/cuvOJyM.png)

---

## 分析總結

- 當時不會PHP，就直接接觸CI3跟Laravel，不太會MongoDB...(~~很糟糕~~)
- 後面補救熬夜加班，寫Code又第二次長白髮(~~第一次是剛生完坐月子時~~)
- 熟悉了框架使用方式後，漸漸感受到它的好處
- 比如 `PHP Array` 的內建函數處理 [推薦這裡](https://www.w3school.com.cn/php/php_ref_array.asp)
- 另外一個坑，有時候後端傳來的資料，沒有強制轉換型態的話是根本**打印不出來的**
- `JSON.stringify` 、`JSON.parse()` 這兩個似乎有用到過
- 之前滿常莫名其妙噴錯發生靈異事件 ... 大概都是 `typeof()` 相關的問題
- 所以搞懂 `資料型態(DataType)` 對半路出家的人來說， **非常重要呢**


---





