❌ 原想法: for循環
錯誤:
Cannot set headers after they are sent to the client …
✅ 解決辦法: 用some() + filter()方法代替含有if、else的for循環
if (data.some(item => {
return 判斷條件
})) {
data = data.filter(item => {
return 過濾條件
})
res.json({
status: '200',
result: data
})
} else {
res.json({
status: '404',
})
}
因爲some()方法不會改變data的值,所以利用filter()方法過濾滿足條件的值。
⚠ ️some()
和 every()
的區別:
- some():只要其中一個爲true就會返回true。
- every():所有都返回true纔會返回true,哪怕有一個false,就會返回false。