'/detail/:id'의 :id를 req.params.id로 얻어오는 과정에서 없는 id를 입력하면 결과값으로 null을 끌어오는 것을 확인했습니다.
db.collection('post').findOne({_id:req.params.id},function(error, result){
if(result == null) {
res.send('404 ERROR');
return false;
};
res.render('detail.ejs',{data : result});
});
해서 위와 같이 입력을 하니 정상 동작을 확인했습니다.
그런데, findOne 함수의 두번째 인자인 콜백함수에서 첫번째 인자로 error를 가지는데, if(result == null)이 아니라 if(error)이라고 쓰면 동작을 하지 않는 이유가 무엇인가요?
제 생각으로는 null이라는 결과값을 성공적으로 찾아내서 error를 토하지 않는 것 같은데, 해당 콜백함수에서 error가 출력(?)되는 시점이 궁금합니다.